6
votes

Twilio: Comment mapper une réponse SMS à un SMS original

IM Création d'une application Web utilisant Twilio et je semble avoir un problème.

Le système comprend 3 acteurs:

  • Un client physique
  • Un serveur physique
  • Notre application Web

    Chaque fois qu'un client crée un nouveau "travail" via un formulaire, tous les détails du travail seront envoyés dans un texte à de nombreux serveurs différents. Lorsque l'un des serveurs répond à ce message texte, nous devons pouvoir associer sa réponse avec le «travail» particulier qu'il a répondu à. Le problème est que je ne peux pas comprendre comment procéder à cela sans acheter de numéro pour chaque emploi et simplement associer chaque numéro avec un emploi. Si possible, je voudrais seulement utiliser un chiffre, car l'achat de milliers de chiffres est totalement gaspillé et impossible.


0 commentaires

3 Réponses :


5
votes

Eh bien, selon Twilio, la réponse consiste à utiliser des cookies:

http://www.twilio.com/docs/QuickStart/php/sms/tracking -conversations

Comme dans les applications Web, un cookie est un petit fichier que votre application peut stocker sur les serveurs Twilio pour suivre les informations, telles qu'un nom d'utilisateur ou un compte. Pour Twilio SMS, les cookies sont scopés à la "conversation" entre deux parties - vous pouvez avoir un cookie unique pour chacun à / à partir de la paire de numéro de téléphone. Par exemple, vous pouvez stocker un cookie unique pour tous les messages envoyés entre 415 et 5555-2222 et 415-555-1111, qui sera différent du cookie utilisé entre 415 et 555-3333 et 415-555-1111.


2 commentaires

Cela fonctionnera si vous n'avez pas besoin de suivre plusieurs conversations entre 2 chiffres. Dis, si 415-555-2222 et 415-5555-1111 échangent des messages sur 2 sujets différents.


Je suis confus à propos de l'endroit où le cookie est réellement défini. Si vous recherchez la page pour cookie , le terme n'apparaît dans le code nulle part. Qu'est-ce que je rate?



8
votes

Les cookies sont les meilleurs façon de gérer une conversation , mais parce que vous ne pouvez pas dire quel texte le serveur répond au serveur, il peut être délicat. Si vous envoyez le serveur 2 emplois, et ils choisissent de répondre au premier emploi, vous n'avez aucun moyen de le savoir.

Je pense que vous avez deux façons raisonnables de faire ceci:

  • Donnez à chaque travail un code de référence (2 ou 3 chiffres pour le rendre facile) que le serveur peut répondre avec. C'est le moyen le plus fiable de le faire.
  • Utilisez plusieurs numéros de téléphone multiple - mais pas nombreux. Donc, pendant une période d'une journée, ou quelques heures, vous n'envoyez qu'un serveur un emploi par numéro. Ensuite, vous pouvez recycler la piscine de nombres et les réutiliser après que le travail ait "expiré". Cela dépend plutôt de ce que vous attendez des volumes.

1 commentaires

Ah oui, je pensais à cela. On dirait que je pourrais juste donner à chaque travail un identifiant de travail. Je vous remercie.



1
votes

Je l'ai rencontré récemment et j'ai trouvé un article qui explique assez bien en utilisant l'idée de la piscine que @XMJW mentionné

Comment les utilisateurs peuvent envoyer des messages texte à l'autre sur Twilio

Bien que l'application soit différente, le concept ici est en quelque sorte identique. Pour quelqu'un d'autre qui pourrait trébucher sur cette question et avoir besoin d'autres solutions.

Qu'est-ce que j'ai fini dans ma solution générant des codes de réponse uniques. Ensuite, sur la réponse, je pourrais interroger le code de réponse et le numéro du numéro de rachat au texte d'origine. Dans mon cas cependant, c'était un humain des deux côtés. Pour un côté étant automatisé comme un serveur, vous pouvez être analysé par rapport à ce que le code est, puis renvoyé avec ce code. Ensuite, vous ne voudriez que SELECT * à partir de messages où code =? .


0 commentaires