Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
| dapnetapisendcall [2022/01/30 12:58] dj7lc [Example for python] | dapnetapisendcall [2023/11/12 19:03] (aktuell) pe2kmv | ||
|---|---|---|---|
| Zeile 3: | Zeile 3: | ||
| ===== Example for curl from linux console ===== | ===== Example for curl from linux console ===== | ||
| - | General example: | ||
| <code> | <code> | ||
| - | curl -H "Content-Type: application/json" -X POST -u USER:PASSWORD -d '{ "text": "FUNKRUFTEXT", "callSignNames": ["RUFZEICHEN"], "transmitterGroupNames": ["SENDERGRUPPENNAME"], "emergency": false }' URL/calls | + | curl -H "Content-Type: application/json" -X POST -u yourcallsign:yourpassword -d '{ "text": "this is the message", "callSignNames": ["destinationcallsign"], "transmitterGroupNames": ["txgroup"], "emergency": false }' http://dapnet.db0sda.ampr.org:8080/calls | 
| </code> | </code> | ||
| - | + | ===== Example for python3 ===== | |
| - | Example with real user data (login credentials not working; they have to be replaced by the real ones): | + | |
| - | <code> | + | |
| - | curl -H "Content-Type: application/json" -X POST -u dl1acb:sehrgeheimespasswort -d '{ "text": "DL1ABC: Das ist eine Sendung über die REST-API", "callSignNames": ["dh1xyz"], "transmitterGroupNames": ["dl-bw"], "emergency": false }' http://http://www.hampager.de:8080/calls | + | |
| - | </code> | + | |
| - | + | ||
| - | ===== Example for python ===== | + | |
| <code> | <code> | ||
| import requests | import requests | ||
| + | |||
| + | url = 'http://dapnet.db0sda.ampr.org:8080/calls' | ||
| headers = {'Content-type': 'application/json'} | headers = {'Content-type': 'application/json'} | ||
| Zeile 25: | Zeile 20: | ||
| data = data.encode('utf-8') | data = data.encode('utf-8') | ||
| - | response = requests.post('http://dapnet.db0sda.ampr.org:8080/calls', headers=headers, auth=('yourcallsign', 'yourpassword'), data=data) | + | response = requests.post(url, headers=headers, auth=('yourcallsign', 'yourpassword'), data=data) | 
| print(response) | print(response) | ||
| </code> | </code> | ||
| + | |||
| + | ===== make sure to select the correct DAPNET server ===== | ||
| + | When you are connected to HAMNET (either through the air or via VPN) you can use the HAMNET node http://www.hampager.de:8080/calls | ||
| + | |||
| + | If you're not connected to HAMNET please use the server connected to the public internet http://www.hampager.de:8080/calls | ||
| + | |||
| ===== calls to more than one callsign ===== | ===== calls to more than one callsign ===== | ||
| - | It is also possible to hand over more than one call sign to the API. The call signs then have to be comma separated . | + | It is also possible to hand over more than one call sign to the API. The call signs then have to be comma separated and quoted. | 
| + | |||
| + | <code> | ||
| + | ["dl1abc", "dk9xyz", "dj1uvw"] | ||
| + | </code> | ||
| But be aware: If one call sign fails (not registered, typo), the whole call is discarded. | But be aware: If one call sign fails (not registered, typo), the whole call is discarded. | ||
| + | ===== calls to more than one tx group ===== | ||
| + | |||
| + | The tx groups have to be comma separated and quoted. | ||
| + | |||
| + | <code> | ||
| + | ["group1", "group2", "group3"] | ||
| + | </code> | ||
| + | But be aware: If one group is invalid (does not exist, typo), the whole call is discarded. | ||