{"action":"created","comment":{"url":"https://api.github.com/repos/opendatakit/docs/pulls/comments/204282665","pull_request_review_id":139332745,"id":204282665,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDIwNDI4MjY2NQ==","diff_hunk":"@@ -0,0 +1,76 @@\n+Submitting filled forms via SMS\n+===================================\n+\n+.. admonition:: SMS is not reliable\n+\n+  SMS does not provide a way for users to reliably know that messages have been delivered in a timely manner. It is not uncommon for messages to be dropped. When submitting forms via SMS, consider also submitting forms to a server when Internet connectivity becomes available. Alternately, set up the receiving end to send an SMS confirmation that the enumerator can verify.\n+\n+Starting in ODK Collect v1.16.0, it is possible to submit filled forms via SMS. This can be useful when Internet connectivity is intermittent or unavailable. To use SMS submissions, you will need to decide where those submissions go. Some options are:\n+\n+- A phone with a SIM that a person manually looks at periodically.\n+- A local number through a gateway service such as Twilio. It could, for example, `forward submissions to Google Sheets <https://www.twilio.com/blog/2018/05/receive-sms-messages-google-sheets-apps-script.html>`_.\n+- A server such as `RapidPro <https://community.rapidpro.io/>`_ configured to receive and interpret messages (can be backed by a SIM or gateway service).\n+\n+.. _collect-sms-submission-format:\n+\n+SMS submission format\n+~~~~~~~~~~~~~~~~~~~~~~~~~~~\n+\n+A form that asks for a user's first name, last name and age might result in submissions as the following SMS messages:\n+``my-form fn Sally ln David a 23``\n+``my-form fn Owen ln Krishnamurti a 22``\n+\n+In this example, ``my-form`` is a prefix specified in the blank form definition to identify submissions from that form. ``fn``, ``ln`` and ``a`` are short tags that are specified in the blank form to identify first name, last name and age. Each tag is followed by the value for the question. \n+\n+Each value in the SMS message is separated by a delimiter. By default this is a single space as in the example above but this can also be configured in the blank form definition.\n+\n+If the submission exceeds the accepted SMS length (usually 160 characters), the message will be sent as a multipart message. Most SMS applications and gateways support this natively but if you expect to receive long submissions, you should verify that you can receive them effectively.\n+\n+Media submission is not currently supported over SMS. If a question of a media type (``image``, for example) includes a tag, the media's filename will be sent.\n+\n+.. _form-sms-submission-configuration","path":"odk1-src/collect-sms-submissions.rst","position":31,"original_position":31,"commit_id":"84a7b9ac1f965311d892011f00582c6dd5d1e92d","original_commit_id":"84a7b9ac1f965311d892011f00582c6dd5d1e92d","user":{"login":"yanokwa","id":32369,"node_id":"MDQ6VXNlcjMyMzY5","avatar_url":"https://avatars3.githubusercontent.com/u/32369?v=4","gravatar_id":"","url":"https://api.github.com/users/yanokwa","html_url":"https://github.com/yanokwa","followers_url":"https://api.github.com/users/yanokwa/followers","following_url":"https://api.github.com/users/yanokwa/following{/other_user}","gists_url":"https://api.github.com/users/yanokwa/gists{/gist_id}","starred_url":"https://api.github.com/users/yanokwa/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/yanokwa/subscriptions","organizations_url":"https://api.github.com/users/yanokwa/orgs","repos_url":"https://api.github.com/users/yanokwa/repos","events_url":"https://api.github.com/users/yanokwa/events{/privacy}","received_events_url":"https://api.github.com/users/yanokwa/received_events","type":"User","site_admin":false},"body":"Needs a trailing `:`","created_at":"2018-07-23T05:03:08Z","updated_at":"2018-07-23T05:03:09Z","html_url":"https://github.com/opendatakit/docs/pull/782#discussion_r204282665","pull_request_url":"https://api.github.com/repos/opendatakit/docs/pulls/782","author_association":"MEMBER","_links":{"self":{"href":"https://api.github.com/repos/opendatakit/docs/pulls/comments/204282665"},"html":{"href":"https://github.com/opendatakit/docs/pull/782#discussion_r204282665"},"pull_request":{"href":"https://api.github.com/repos/opendatakit/docs/pulls/782"}}},"pull_request":{"url":"https://api.github.com/repos/opendatakit/docs/pulls/782","id":203108117,"node_id":"MDExOlB1bGxSZXF1ZXN0MjAzMTA4MTE3","html_url":"https://github.com/opendatakit/docs/pull/782","diff_url":"https://github.com/opendatakit/docs/pull/782.diff","patch_url":"https://github.com/opendatakit/docs/pull/782.patch","issue_url":"https://api.github.com/repos/opendatakit/docs/issues/782","number":782,"state":"open","locked":false,"title":"Add basic docs for SMS submission","user":{"login":"lognaturel","id":967540,"node_id":"MDQ6VXNlcjk2NzU0MA==","avatar_url":"https://avatars3.githubusercontent.com/u/967540?v=4","gravatar_id":"","url":"https://api.github.com/users/lognaturel","html_url":"https://github.com/lognaturel","followers_url":"https://api.github.com/users/lognaturel/followers","following_url":"https://api.github.com/users/lognaturel/following{/other_user}","gists_url":"https://api.github.com/users/lognaturel/gists{/gist_id}","starred_url":"https://api.github.com/users/lognaturel/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lognaturel/subscriptions","organizations_url":"https://api.github.com/users/lognaturel/orgs","repos_url":"https://api.github.com/users/lognaturel/repos","events_url":"https://api.github.com/users/lognaturel/events{/privacy}","received_events_url":"https://api.github.com/users/lognaturel/received_events","type":"User","site_admin":false},"body":"partially addresses #781\r\n\r\n#### What is included in this PR?\r\nFirst pass at SMS docs.\r\n\r\n#### What is left to be done in the addressed issue?\r\nSome of the components described in #781 will need to be expanded on. All screenshots of Server settings will need to be updated.\r\n\r\n#### What problems did you encounter?\r\nIt's hard to know where this should be linked from and how it should be split up. Perhaps the form design part should go in form design, for example. \r\n\r\nCC @jd-alexander","created_at":"2018-07-23T04:46:36Z","updated_at":"2018-07-23T05:03:09Z","closed_at":null,"merged_at":null,"merge_commit_sha":"8859397647635e72a7e9ffc4e1402546fb377aa8","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/opendatakit/docs/pulls/782/commits","review_comments_url":"https://api.github.com/repos/opendatakit/docs/pulls/782/comments","review_comment_url":"https://api.github.com/repos/opendatakit/docs/pulls/comments{/number}","comments_url":"https://api.github.com/repos/opendatakit/docs/issues/782/comments","statuses_url":"https://api.github.com/repos/opendatakit/docs/statuses/84a7b9ac1f965311d892011f00582c6dd5d1e92d","head":{"label":"lognaturel:sms-submission","ref":"sms-submission","sha":"84a7b9ac1f965311d892011f00582c6dd5d1e92d","user":{"login":"lognaturel","id":967540,"node_id":"MDQ6VXNlcjk2NzU0MA==","avatar_url":"https://avatars3.githubusercontent.com/u/967540?v=4","gravatar_id":"","url":"https://api.github.com/users/lognaturel","html_url":"https://github.com/lognaturel","followers_url":"https://api.github.com/users/lognaturel/followers","following_url":"https://api.github.com/users/lognaturel/following{/other_user}","gists_url":"https://api.github.com/users/lognaturel/gists{/gist_id}","starred_url":"https://api.github.com/users/lognaturel/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lognaturel/subscriptions","organizations_url":"https://api.github.com/users/lognaturel/orgs","repos_url":"https://api.github.com/users/lognaturel/repos","events_url":"https://api.github.com/users/lognaturel/events{/privacy}","received_events_url":"https://api.github.com/users/lognaturel/received_events","type":"User","site_admin":false},"repo":{"id":104352127,"node_id":"MDEwOlJlcG9zaXRvcnkxMDQzNTIxMjc=","name":"docs","full_name":"lognaturel/docs","owner":{"login":"lognaturel","id":967540,"node_id":"MDQ6VXNlcjk2NzU0MA==","avatar_url":"https://avatars3.githubusercontent.com/u/967540?v=4","gravatar_id":"","url":"https://api.github.com/users/lognaturel","html_url":"https://github.com/lognaturel","followers_url":"https://api.github.com/users/lognaturel/followers","following_url":"https://api.github.com/users/lognaturel/following{/other_user}","gists_url":"https://api.github.com/users/lognaturel/gists{/gist_id}","starred_url":"https://api.github.com/users/lognaturel/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lognaturel/subscriptions","organizations_url":"https://api.github.com/users/lognaturel/orgs","repos_url":"https://api.github.com/users/lognaturel/repos","events_url":"https://api.github.com/users/lognaturel/events{/privacy}","received_events_url":"https://api.github.com/users/lognaturel/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/lognaturel/docs","description":"Open Data Kit Documentation, built in Sphinx.","fork":true,"url":"https://api.github.com/repos/lognaturel/docs","forks_url":"https://api.github.com/repos/lognaturel/docs/forks","keys_url":"https://api.github.com/repos/lognaturel/docs/keys{/key_id}","collaborators_url":"https://api.github.com/repos/lognaturel/docs/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/lognaturel/docs/teams","hooks_url":"https://api.github.com/repos/lognaturel/docs/hooks","issue_events_url":"https://api.github.com/repos/lognaturel/docs/issues/events{/number}","events_url":"https://api.github.com/repos/lognaturel/docs/events","assignees_url":"https://api.github.com/repos/lognaturel/docs/assignees{/user}","branches_url":"https://api.github.com/repos/lognaturel/docs/branches{/branch}","tags_url":"https://api.github.com/repos/lognaturel/docs/tags","blobs_url":"https://api.github.com/repos/lognaturel/docs/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/lognaturel/docs/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/lognaturel/docs/git/refs{/sha}","trees_url":"https://api.github.com/repos/lognaturel/docs/git/trees{/sha}","statuses_url":"https://api.github.com/repos/lognaturel/docs/statuses/{sha}","languages_url":"https://api.github.com/repos/lognaturel/docs/languages","stargazers_url":"https://api.github.com/repos/lognaturel/docs/stargazers","contributors_url":"https://api.github.com/repos/lognaturel/docs/contributors","subscribers_url":"https://api.github.com/repos/lognaturel/docs/subscribers","subscription_url":"https://api.github.com/repos/lognaturel/docs/subscription","commits_url":"https://api.github.com/repos/lognaturel/docs/commits{/sha}","git_commits_url":"https://api.github.com/repos/lognaturel/docs/git/commits{/sha}","comments_url":"https://api.github.com/repos/lognaturel/docs/comments{/number}","issue_comment_url":"https://api.github.com/repos/lognaturel/docs/issues/comments{/number}","contents_url":"https://api.github.com/repos/lognaturel/docs/contents/{+path}","compare_url":"https://api.github.com/repos/lognaturel/docs/compare/{base}...{head}","merges_url":"https://api.github.com/repos/lognaturel/docs/merges","archive_url":"https://api.github.com/repos/lognaturel/docs/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/lognaturel/docs/downloads","issues_url":"https://api.github.com/repos/lognaturel/docs/issues{/number}","pulls_url":"https://api.github.com/repos/lognaturel/docs/pulls{/number}","milestones_url":"https://api.github.com/repos/lognaturel/docs/milestones{/number}","notifications_url":"https://api.github.com/repos/lognaturel/docs/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/lognaturel/docs/labels{/name}","releases_url":"https://api.github.com/repos/lognaturel/docs/releases{/id}","deployments_url":"https://api.github.com/repos/lognaturel/docs/deployments","created_at":"2017-09-21T13:32:21Z","updated_at":"2018-04-30T22:28:02Z","pushed_at":"2018-07-23T04:54:18Z","git_url":"git://github.com/lognaturel/docs.git","ssh_url":"git@github.com:lognaturel/docs.git","clone_url":"https://github.com/lognaturel/docs.git","svn_url":"https://github.com/lognaturel/docs","homepage":"http://docs.opendatakit.org/","size":1801,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":0,"license":{"key":"other","name":"Other","spdx_id":null,"url":null,"node_id":"MDc6TGljZW5zZTA="},"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"opendatakit:master","ref":"master","sha":"b358ab556b9fa1a7ad8a07226e8633fdbee3de52","user":{"login":"opendatakit","id":6222985,"node_id":"MDEyOk9yZ2FuaXphdGlvbjYyMjI5ODU=","avatar_url":"https://avatars0.githubusercontent.com/u/6222985?v=4","gravatar_id":"","url":"https://api.github.com/users/opendatakit","html_url":"https://github.com/opendatakit","followers_url":"https://api.github.com/users/opendatakit/followers","following_url":"https://api.github.com/users/opendatakit/following{/other_user}","gists_url":"https://api.github.com/users/opendatakit/gists{/gist_id}","starred_url":"https://api.github.com/users/opendatakit/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/opendatakit/subscriptions","organizations_url":"https://api.github.com/users/opendatakit/orgs","repos_url":"https://api.github.com/users/opendatakit/repos","events_url":"https://api.github.com/users/opendatakit/events{/privacy}","received_events_url":"https://api.github.com/users/opendatakit/received_events","type":"Organization","site_admin":false},"repo":{"id":92860132,"node_id":"MDEwOlJlcG9zaXRvcnk5Mjg2MDEzMg==","name":"docs","full_name":"opendatakit/docs","owner":{"login":"opendatakit","id":6222985,"node_id":"MDEyOk9yZ2FuaXphdGlvbjYyMjI5ODU=","avatar_url":"https://avatars0.githubusercontent.com/u/6222985?v=4","gravatar_id":"","url":"https://api.github.com/users/opendatakit","html_url":"https://github.com/opendatakit","followers_url":"https://api.github.com/users/opendatakit/followers","following_url":"https://api.github.com/users/opendatakit/following{/other_user}","gists_url":"https://api.github.com/users/opendatakit/gists{/gist_id}","starred_url":"https://api.github.com/users/opendatakit/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/opendatakit/subscriptions","organizations_url":"https://api.github.com/users/opendatakit/orgs","repos_url":"https://api.github.com/users/opendatakit/repos","events_url":"https://api.github.com/users/opendatakit/events{/privacy}","received_events_url":"https://api.github.com/users/opendatakit/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/opendatakit/docs","description":"Open Data Kit Documentation, built in Sphinx.","fork":false,"url":"https://api.github.com/repos/opendatakit/docs","forks_url":"https://api.github.com/repos/opendatakit/docs/forks","keys_url":"https://api.github.com/repos/opendatakit/docs/keys{/key_id}","collaborators_url":"https://api.github.com/repos/opendatakit/docs/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/opendatakit/docs/teams","hooks_url":"https://api.github.com/repos/opendatakit/docs/hooks","issue_events_url":"https://api.github.com/repos/opendatakit/docs/issues/events{/number}","events_url":"https://api.github.com/repos/opendatakit/docs/events","assignees_url":"https://api.github.com/repos/opendatakit/docs/assignees{/user}","branches_url":"https://api.github.com/repos/opendatakit/docs/branches{/branch}","tags_url":"https://api.github.com/repos/opendatakit/docs/tags","blobs_url":"https://api.github.com/repos/opendatakit/docs/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/opendatakit/docs/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/opendatakit/docs/git/refs{/sha}","trees_url":"https://api.github.com/repos/opendatakit/docs/git/trees{/sha}","statuses_url":"https://api.github.com/repos/opendatakit/docs/statuses/{sha}","languages_url":"https://api.github.com/repos/opendatakit/docs/languages","stargazers_url":"https://api.github.com/repos/opendatakit/docs/stargazers","contributors_url":"https://api.github.com/repos/opendatakit/docs/contributors","subscribers_url":"https://api.github.com/repos/opendatakit/docs/subscribers","subscription_url":"https://api.github.com/repos/opendatakit/docs/subscription","commits_url":"https://api.github.com/repos/opendatakit/docs/commits{/sha}","git_commits_url":"https://api.github.com/repos/opendatakit/docs/git/commits{/sha}","comments_url":"https://api.github.com/repos/opendatakit/docs/comments{/number}","issue_comment_url":"https://api.github.com/repos/opendatakit/docs/issues/comments{/number}","contents_url":"https://api.github.com/repos/opendatakit/docs/contents/{+path}","compare_url":"https://api.github.com/repos/opendatakit/docs/compare/{base}...{head}","merges_url":"https://api.github.com/repos/opendatakit/docs/merges","archive_url":"https://api.github.com/repos/opendatakit/docs/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/opendatakit/docs/downloads","issues_url":"https://api.github.com/repos/opendatakit/docs/issues{/number}","pulls_url":"https://api.github.com/repos/opendatakit/docs/pulls{/number}","milestones_url":"https://api.github.com/repos/opendatakit/docs/milestones{/number}","notifications_url":"https://api.github.com/repos/opendatakit/docs/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/opendatakit/docs/labels{/name}","releases_url":"https://api.github.com/repos/opendatakit/docs/releases{/id}","deployments_url":"https://api.github.com/repos/opendatakit/docs/deployments","created_at":"2017-05-30T17:45:43Z","updated_at":"2018-07-22T17:00:02Z","pushed_at":"2018-07-23T04:54:19Z","git_url":"git://github.com/opendatakit/docs.git","ssh_url":"git@github.com:opendatakit/docs.git","clone_url":"https://github.com/opendatakit/docs.git","svn_url":"https://github.com/opendatakit/docs","homepage":"https://docs.opendatakit.org/","size":1896,"stargazers_count":18,"watchers_count":18,"language":"Python","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":68,"mirror_url":null,"archived":false,"open_issues_count":125,"license":{"key":"other","name":"Other","spdx_id":null,"url":null,"node_id":"MDc6TGljZW5zZTA="},"forks":68,"open_issues":125,"watchers":18,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/opendatakit/docs/pulls/782"},"html":{"href":"https://github.com/opendatakit/docs/pull/782"},"issue":{"href":"https://api.github.com/repos/opendatakit/docs/issues/782"},"comments":{"href":"https://api.github.com/repos/opendatakit/docs/issues/782/comments"},"review_comments":{"href":"https://api.github.com/repos/opendatakit/docs/pulls/782/comments"},"review_comment":{"href":"https://api.github.com/repos/opendatakit/docs/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/opendatakit/docs/pulls/782/commits"},"statuses":{"href":"https://api.github.com/repos/opendatakit/docs/statuses/84a7b9ac1f965311d892011f00582c6dd5d1e92d"}},"author_association":"MEMBER"}}
{"actor":{"display_login":"yanokwa"}}