iotcreators.com web
    • Login
    • Search
    • forum.iotcreators.com
    • docs.iotcreators.com
    • Tags
    • Popular
    • Recent
    • Register

    Graag downlink voorbeeld door rechtstreeks de api te gebruiken

    iotcreators.com portal & API
    postman device registration downlink gui application-url
    8
    24
    3870
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • J
      JeroenD last edited by Aleksandra Klinkner

      Ik probeer:
      curl -X PUT -H “Accept: application/json” -H “Authorization: Basic xxx” -H “Content-Type: application/json” -d “{ “resourcevalue” : “Hallo” }” https://iot.netwerk.t-mobile.nl/m2m/endpoints/86833xxxxxxxxxx/downlinkMessage/0/data
      met xxx uiteraard de Base64 van mijn username:password en 86833xxxxxxxxx de IMEI van mijn device. Ik kan wel https://iot.netwerk.t-mobile.nl/rest/device?iDisplayLength=-1 aanroepen met dezelfde authorisatie, dus die is goed lijkt mij. Toch krijg ik {“msg”:“Unauthorized”,“code”:1001}
      Ik heb als {DeviceId} ook al IMEI:86833xxxxxxxxxx geprobeerd en ook 5041, een id dat ik terugkreeg van /rest/device?iDisplayLength=-1

      Wat doe ik niet goed?

      1 Reply Last reply Reply Quote 0
      • J
        JeroenD last edited by

        Ik zie dat ik /downlinkMessage/0/data probeer terwijl het downlinkMsg/0/data moet zijn. Ik krijg echter dan dezelfde reactie

        1 Reply Last reply Reply Quote 0
        • afzal_m
          afzal_m iotcreators.com team last edited by

          Volgens mij werkt de dowlink op bovenstaande manier alleen als je de callback URL ook via een curl command hebt toegevoegd (en refererend naar je andere topic, heb je de callback URL volgens mij via de GUI toegevoegd)

          1 Reply Last reply Reply Quote 0
          • J
            JeroenD last edited by

            @afzal_m Ik heb de callback inderdaad via de GUI toegevoegd, ik zal vanavond eens proberen de URL via curl toe te voegen.
            Klopt het dat ik geen https callback kan toevoegen?

            1 Reply Last reply Reply Quote 0
            • J
              JeroenD last edited by

              @afzal_m Dank voor je hulp! De callback url met curl toevoegen werkt inderdaad. Het is misschien een goed idee dit beter te documenteren? Of nog beter: te veranderen dat een via de GUI toegevoegde URL ook werkt?

              Getting started VII ‘Hello device’ is ook erg summier met alleen een postman voorbeeld…

              Voor degenen die geinteresseerd zijn, dit is de API call die werkt:

              curl -X PUT -H “Authorization: Basic xxx” -H “Content-Type: application/json” -d “{ “resourceValue” : “Hallo” }” https://iot.netwerk.t-mobile.nl/m2m/endpoints/IMEI%3a868333030xxxxxx/downlinkMsg/0/data

              Met achter ‘Basic’ uiteraard je eigen Base64(username:password) ipv xxx en je eigen device IMEI. Voor de volledigheid: de downlink op je device komt pas binnen na de eerstvolgende uplink.

              T 1 Reply Last reply Reply Quote 1
              • afzal_m
                afzal_m iotcreators.com team last edited by

                Ja, we gaan de doc library volgende week updaten! Dank voor de feedback.

                En…

                @jeroend said in Graag downlink voorbeeld door rechtstreeks de api te gebruiken:

                Voor de volledigheid: de downlink op je device komt pas binnen na de eerstvolgende uplink.

                Hier wordt ook aan gewerkt 😉

                1 Reply Last reply Reply Quote 1
                • A
                  Arie van Wettum last edited by

                  @jeroend said in Graag downlink voorbeeld door rechtstreeks de api te gebruiken:

                  Ik will een bericht sturen naar een SODAQ UBEE R410M en zie dat dit kennelijk mogelijk is met “curl”. Nu begreep ik alleen niet waar ik die “Base64(username:password)” vandaan moet halen.

                  Begijp ik verder goed dat mijn IMEI op de plaats van de xxxxxx moet komen in de regel met " /IMEI%3a868333030xxxxxx/downlinkMsg/0/data" en de rest moet laten staan?

                  S 1 Reply Last reply Reply Quote 0
                  • S
                    Stefan de Lange @Arie van Wettum last edited by

                    @arie-van-wettum Goede syntax is als volgt:

                    https://iot.netwerk.t-mobile.nl/m2m/endpoints/IMEI:<imei>/downlinkMsg/0/data

                    Met als body:

                    {
                    {“resourceValue” : “<string>”}
                    }

                    1 Reply Last reply Reply Quote 0
                    • A
                      Arie van Wettum last edited by

                      @jeroend said in Graag downlink voorbeeld door rechtstreeks de api te gebruiken:

                      O.k. stel mijn IMEI is 123456789 dan krijg ik:

                      curl -X PUT -H “Authorization: Basic xxx” -H “Content-Type: application/json” -d “{ “resourceValue” : “Hallo” }” https://iot.netwerk.t-mobile.nl/m2m/endpoints/IMEI:123456789/downlinkMsg/0/data

                      Wat is dat dan deze “Authorization: Basic xxx” ? Waar kan ik deze “Base64(username:password)” vandaan halen?

                      S 1 Reply Last reply Reply Quote 0
                      • S
                        Stefan de Lange @Arie van Wettum last edited by

                        @arie-van-wettum

                        Wat is dat dan deze “Authorization: Basic xxx” ? Waar kan ik deze “Base64(username:password)” vandaan halen?

                        https://www.blitter.se/utils/basic-authentication-header-generator/

                        Vul hier je T-Mobile API naam en wachtwoord in. Vul dat vervolgens in op de plek van xxx, dan zou het moeten werken… (veel API tools doen dit zelf al, zoals bijvoorbeeld postman)

                        1 Reply Last reply Reply Quote 0
                        • B
                          Bart Abel last edited by

                          Ik probeerde net via de documentatie te achterhalen hoe downlink berichten verstuurd moeten worden, daar is helaas nog steeds vrijwel niets over te vinden. De beste beschrijving is nu in het postman screenshot van “VII. Hello device”. Bij deze dus een bump van dit oude bericht, wat meer in depth documentatie zou welkom zijn.

                          Hoe moet de body er bijvoorbeeld precies uit zien, is er alleen een resourceValue attirbuut of zijn er meer mogelijkheden?
                          En kan er alleen ASCII data verstuurd worden?

                          B 1 Reply Last reply Reply Quote 0
                          • B
                            Bob Mooij @Bart Abel last edited by

                            @bart-abel Voor het versturen van een downlink bericht kan je de volgende API call uitvoeren

                            curl -X PUT -H "Authorization: Basic xxxxxxxxx" -H "Content-Type: application/json" -d "{ "resourceValue" : "Hallo" }" https://iot.netwerk.t-mobile.nl/m2m/endpoints/IMEI:xxxxxxx004/downlinkMsg/0/data
                            

                            Waarbij de xxxxxxx waardes ingevuld moeten worden met jouw credentials en IMEI. (Vergeet niet om van te voren een endpoint te registreren via de API)

                            Zo als je hierboven ziet, ziet body er als volgt uitziet

                            { "resourceValue" : "Hallo" }
                            

                            Aangezien de body JSON is kunnen er alleen ASCII characters verstuurd worden. Om binary data te versturen kan er base64 encoding gebruikt worden.

                            B 1 Reply Last reply Reply Quote 1
                            • B
                              Bart Abel @Bob Mooij last edited by

                              @bob-mooij Bedankt voor de informatie. Als er base64 encoding wordt gebruikt, wordt dit dan decoded afgeleverd bij het device? Zie ook mijn andere post over de uplink route: https://forum.iot.t-mobile.nl/topic/364/uplink-data-encoding Zou je daar ook antwoord op kunnen geven in de andere post?

                              E 1 Reply Last reply Reply Quote 0
                              • E
                                Eric Barten iotcreators.com team @Bart Abel last edited by

                                Hoi @bart-abel en @Bob-Mooij jullie zijn op de goede weg er zijn 2 nog ongedocumenteerde API calls beschikbaar voor binaire downlink berichten.

                                *PUT {{base_url}}/m2m/endpoints/{{DeviceId}}/downlinkMsgBase64/0/data

                                *PUT {{base_url}}/m2m/endpoints/{{DeviceId}}/downlinkMsgBase64Drx/0/data

                                Voor beide API’s geldt dat de base64 encoded payload, binair wordt afgeleverd bij je device als je hem via de UDP adapter hebt geregistreerd.

                                Het verschil tussen deze calls is dat bij de eerste call je downlinks (Max 10) worden gebufferd en pas naar het device wordt gestuurd als we zeker weten dat hij luistert en dat is dus nadat we een uplink bericht hebben ontvangen.

                                De tweede call versturen we direct door naar je device, je moet dan zelf zeker weten dat hij op dat moment in staat is berichten te ontvangen. NB; Ook hier is een tijdelijke netwerk buffer van 1 bericht aanwezig deze is minder betrouwbaar.

                                1 Reply Last reply Reply Quote 0
                                • T
                                  trick2011 @JeroenD last edited by

                                  @JeroenD said in Graag downlink voorbeeld door rechtstreeks de api te gebruiken:

                                  @afzal_m Dank voor je hulp! De callback url met curl toevoegen werkt inderdaad. Het is misschien een goed idee dit beter te documenteren? Of nog beter: te veranderen dat een via de GUI toegevoegde URL ook werkt?

                                  Getting started VII ‘Hello device’ is ook erg summier met alleen een postman voorbeeld…

                                  Voor degenen die geinteresseerd zijn, dit is de API call die werkt:

                                  curl -X PUT -H “Authorization: Basic xxx” -H “Content-Type: application/json” -d “{ “resourceValue” : “Hallo” }” https://iot.netwerk.t-mobile.nl/m2m/endpoints/IMEI%3a868333030xxxxxx/downlinkMsg/0/data

                                  Met achter ‘Basic’ uiteraard je eigen Base64(username:password) ipv xxx en je eigen device IMEI. Voor de volledigheid: de downlink op je device komt pas binnen na de eerstvolgende uplink.

                                  Dit is toch wel een beetje vervelend. Ik loop nu een jaar later tegen exact dit probleem aan. Mijn callback URL is toegevoegd via de GUI en nu kan ik geen downlink berichten versturen. De docs reppen geen woord over deze eis. De enige info hierover is een stille video.

                                  {"msg":"Unauthorized","code":1001}
                                  
                                  1 Reply Last reply Reply Quote 0
                                  • J
                                    JeroenD last edited by

                                    @trick2011 said in Graag downlink voorbeeld door rechtstreeks de api te gebruiken:

                                    curl -X PUT -H “Authorization: Basic xxx” -H “Content-Type: application/json” -d “{ “resourceValue” : “Hallo” }” https://iot.netwerk.t-mobile.nl/m2m/endpoints/IMEI%3a868333030xxxxxx/downlinkMsg/0/data

                                    Probeer
                                    curl -X PUT -H “Content-Type: application/json” -d “{ “resourceValue” : “Hallo” }” https://username:password@iot.netwerk.t-mobile.nl/m2m/endpoints/IMEI%3a868333030xxxxxx/downlinkMsg/0/data

                                    Vul bij username en password je eigen username en password in die staan bij API credentials. Na IMEI%3a moet je het IMEI nummer invullen van het device waar je hetbericht naartoe wilt sturen

                                    T 1 Reply Last reply Reply Quote 0
                                    • T
                                      trick2011 @JeroenD last edited by

                                      @JeroenD Zover was ik inderdaad na dit thread gekomen en heb nu via de API de callback URL ingesteld dus hij doet nu downlinks, altough ik heb nog geen data op mijn node zien verschijnen.

                                      1 Reply Last reply Reply Quote 0
                                      • J
                                        JeroenD last edited by

                                        Check je username en wachtwoord. Als je een “Unauthorized” krijgt zou het daar ergens kunnen zitten. Check de IMEI, volgens mij staat deze ook in de reply op je downlink. Heb je speciale tekens in je wachtwoord? Dan kan je ook het eerste voorbeeld gebruiken en bij de xxx de Base64 encoding van username:password zetten.

                                        Je kunt ook naar
                                        curl -X PUT -H “Authorization: Basic xxx” -H “Content-Type: application/json” -d “yyy” https://iot.netwerk.t-mobile.nl/m2m/endpoints/IMEI%3a868333030xxxxxx/downlinkMsgBase64Drx/0/data

                                        sturen. De data die je vesrtuurd (bij yyy) moet dan Base64 encoded zijn. Als ik het me goed herinner kan je met deze 2e call ALTIJD data versturen, en met de eerste call alleen in combinatie met een uplink

                                        1 Reply Last reply Reply Quote 0
                                        • J
                                          JeroenD last edited by

                                          @trick2011 Ik heb overigens nu ook de indruk dat een downlink niet werkt. @afzal_m @Eric-Barten kan het inderdaad zijn dat downlinks niet werken op het moment?

                                          T 1 Reply Last reply Reply Quote 0
                                          • T
                                            trick2011 @JeroenD last edited by

                                            @JeroenD Eigenlijk positief om te horen dat anderen ook moeite hebben dan ben ik in ieder geval niet helemaal gek. @afzal_m ik hoor het graag als het netwerk niet functioneerde en wanneer hij het weer doet want dan kan ik verder met testen

                                            1 Reply Last reply Reply Quote 0
                                            • afzal_m
                                              afzal_m iotcreators.com team last edited by

                                              I just tested the downlink and it works. But I have to admit, for it it was just clicking a button on a GUI. 🙂

                                              But now I am sure that it is probably an issue with our explanation.

                                              I am going to translate the threads here and @Yassine-Amraue will come with a response tomorrow.

                                              J 2 Replies Last reply Reply Quote 0
                                              • J
                                                JeroenD @afzal_m last edited by

                                                @afzal_m Thnx Afzal!

                                                1 Reply Last reply Reply Quote 0
                                                • J
                                                  JeroenD @afzal_m last edited by

                                                  @afzal_m I just checked again, for me the downlink is working (again?)

                                                  But I have to admit, for it it was just clicking a button on a GUI.

                                                  Lucky you, I used a HTTP PUT request to downlinkMsgBase64Drx

                                                  1 Reply Last reply Reply Quote 1
                                                  • 1
                                                  • 2
                                                  • 1 / 2
                                                  • First post
                                                    Last post