- ID de l'analyse :
- 54a00c71-66f2-4557-9e41-4cc866965177Terminée
- URL soumise :
- https://twilio.sgx.soprani.ca/Redirigé
- Fin du rapport :
Liens : 9 trouvé(s)
Liens sortants identifiés à partir de la page
Lien | texte |
---|---|
https://liberapay.com/singpolyma/ | on Liberapay |
https://www.patreon.com/singpolyma | on Patreon |
https://jmp.chat | JMP |
https://github.com/pesvut/sgx-twilio | https://github.com/pesvut/sgx-twilio |
https://console.twilio.com | https://console.twilio.com |
http://moinmo.in/ | MoinMoin Powered |
http://moinmo.in/Python | Python Powered |
http://moinmo.in/GPL | GPL licensed |
http://validator.w3.org/check?uri=referer | Valid HTML 4.01 |
Variables JavaScript : 49 trouvée(s)
Les variables JavaScript globales chargées dans l'objet fenêtre d'une page sont des variables déclarées en dehors des fonctions et accessibles depuis n'importe quel endroit du code au sein du champ d'application actuel
Nom | Type |
---|---|
onbeforetoggle | object |
documentPictureInPicture | object |
onscrollend | object |
searchChange | function |
searchSetDisabled | function |
searchFocus | function |
searchBlur | function |
actionsMenuInit | function |
addLoadEvent | function |
can_use_gui_editor | function |
Messages de journal de console : 0 trouvé(s)
Messages consignés dans la console web
HTML
Le corps HTML de la page en données brutes
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"><html><head>
<meta http-equiv="X-UA-Compatible" content="IE=Edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
<meta name="edit_on_doubleclick" content="/">
<meta name="robots" content="index,nofollow">
<title>TwilioSetup - Soprani.ca Wiki</title>
<script type="text/javascript" src="/moin_static199/common/js/common.js"></script>
<script type="text/javascript">
<!--
var search_hint = "Search";
//-->
</script>
<link rel="stylesheet" type="text/css" charset="utf-8" media="all" href="/moin_static199/modern/css/common.css">
<link rel="stylesheet" type="text/css" charset="utf-8" media="screen" href="/moin_static199/modern/css/screen.css">
<link rel="stylesheet" type="text/css" charset="utf-8" media="print" href="/moin_static199/modern/css/print.css">
<link rel="stylesheet" type="text/css" charset="utf-8" media="projection" href="/moin_static199/modern/css/projection.css">
<!-- css only for MS IE6/IE7 browsers -->
<!--[if lt IE 8]>
<link rel="stylesheet" type="text/css" charset="utf-8" media="all" href="/moin_static199/modern/css/msie.css">
<![endif]-->
<link rel="alternate" title="Soprani.ca Wiki: TwilioSetup" href="/TwilioSetup?diffs=1&show_att=1&action=rss_rc&unique=0&page=TwilioSetup&ddiffs=1" type="application/rss+xml">
<link rel="alternate" type="application/wiki" title="Edit" href="/TwilioSetup?action=edit">
<link rel="Start" href="/FrontPage">
<link rel="Alternate" title="Wiki Markup" href="/TwilioSetup?action=raw">
<link rel="Alternate" media="print" title="Print View" href="/TwilioSetup?action=print">
<link rel="Search" href="/FindPage">
<link rel="Index" href="/TitleIndex">
<link rel="Glossary" href="/WordIndex">
<link rel="Help" href="/HelpOnFormatting">
</head>
<body lang="en" dir="ltr">
<div id="header">
<div id="logo"><a href="/FrontPage"><img src="https://soprani.ca/sopranica.png" alt="Logo"></a></div>
<form id="searchform" method="get" action="/TwilioSetup">
<div>
<input type="hidden" name="action" value="fullsearch">
<input type="hidden" name="context" value="180">
<label for="searchinput" style="display: none;">Search:</label>
<input id="searchinput" type="text" name="value" value="" size="20" onfocus="searchFocus(this)" onblur="searchBlur(this)" onkeyup="searchChange(this)" onchange="searchChange(this)" alt="Search" class="disabled">
<input id="titlesearch" name="titlesearch" type="submit" value="Titles" alt="Search Titles" disabled="">
<input id="fullsearch" name="fullsearch" type="submit" value="Text" alt="Search Full Text" disabled="">
</div>
</form>
<script type="text/javascript">
<!--// Initialize search form
var f = document.getElementById('searchform');
f.getElementsByTagName('label')[0].style.display = 'none';
var e = document.getElementById('searchinput');
searchChange(e);
searchBlur(e);
//-->
</script>
<ul id="username"><li><a href="/TwilioSetup?action=login" id="login" rel="nofollow">Login</a></li></ul>
<div id="locationline">
<ul id="pagelocation">
<li><a href="/TwilioSetup">TwilioSetup</a></li>
</ul>
</div>
<ul id="pagetrail">
<li><a href="/TwilioSetup">TwilioSetup</a></li>
</ul>
<ul id="navibar">
<li class="wikilink"><a href="/RecentChanges">RecentChanges</a></li><li class="wikilink"><a href="/FindPage">FindPage</a></li><li class="wikilink"><a href="/HelpContents">HelpContents</a></li><li class="current"><a href="/TwilioSetup">TwilioSetup</a></li>
</ul>
<div id="pageline"><hr style="display:none;"></div>
<ul class="editbar"><li><a href="/TwilioSetup?action=edit&editor=text" name="texteditlink" rel="nofollow">Edit</a></li><li class="toggleCommentsButton" style="display:none;"><a href="#" class="nbcomment" onclick="toggleComments();return false;">Comments</a></li><li><a class="nbinfo" href="/TwilioSetup?action=info" rel="nofollow">Info</a></li><li><a class="nbattachments" href="/TwilioSetup?action=AttachFile" rel="nofollow">Attachments</a></li><li>
<form class="actionsmenu" method="GET" action="/TwilioSetup">
<div>
<select name="action" onchange="if ((this.selectedIndex != 0) &&
(this.options[this.selectedIndex].disabled == false)) {
this.form.submit();
}
this.selectedIndex = 0;">
<option value="show">More Actions:</option><option value="raw">Raw Text</option>
<option value="print">Print View</option>
<option value="RenderAsDocbook">Render as Docbook</option>
<option value="refresh">Delete Cache</option>
<option value="show" disabled="" class="disabled">------------------------</option>
<option value="SpellCheck">Check Spelling</option>
<option value="LikePages">Like Pages</option>
<option value="LocalSiteMap">Local Site Map</option>
<option value="show" disabled="" class="disabled">------------------------</option>
<option value="RenamePage" disabled="" class="disabled">Rename Page</option>
<option value="DeletePage" disabled="" class="disabled">Delete Page</option>
<option value="show" disabled="" class="disabled">------------------------</option>
<option value="show" disabled="" class="disabled">Subscribe User</option>
<option value="show" disabled="" class="disabled">------------------------</option>
<option value="show" disabled="" class="disabled">Remove Spam</option>
<option value="show" disabled="" class="disabled">Revert to this revision</option>
<option value="PackagePages">Package Pages</option>
<option value="SyncPages">Sync Pages</option>
<option value="show" disabled="" class="disabled">------------------------</option>
<option value="Load">Load</option>
<option value="Save">Save</option>
<option value="SlideShow">SlideShow</option>
</select>
</div>
<script type="text/javascript">
<!--// Init menu
actionsMenuInit('More Actions:');
//-->
</script>
</form>
</li></ul>
</div>
<div id="page" lang="en" dir="ltr">
<div dir="ltr" id="content" lang="en"><span class="anchor" id="top"></span>
<span class="anchor" id="line-1"></span><span class="anchor" id="line-2"></span><span class="anchor" id="line-3"></span><p class="line862">Providing the below SGX services is not free; if you find them useful please consider supporting infrastructure costs <a class="https" href="https://liberapay.com/singpolyma/">on Liberapay</a>, <a class="https" href="https://www.patreon.com/singpolyma">on Patreon</a>, or by becoming a paying customer of <a class="https" href="https://jmp.chat">JMP</a>. <span class="anchor" id="line-4"></span><span class="anchor" id="line-5"></span></p><p class="line862">Run the register command on <tt class="backtick">cheogram.com</tt> and enter gateway <tt class="backtick">twilio.sgx.soprani.ca</tt> or chat with <a class="xmpp" href="xmpp:cheogram.com">xmpp:cheogram.com</a> bot and say <tt class="backtick">register twilio.sgx.soprani.ca</tt> <span class="anchor" id="line-6"></span><span class="anchor" id="line-7"></span></p><p class="line862">Source: <a class="https" href="https://github.com/pesvut/sgx-twilio">https://github.com/pesvut/sgx-twilio</a> <span class="anchor" id="line-8"></span><span class="anchor" id="line-9"></span></p><p class="line867">
</p><h2 id="Inbound_SMS">Inbound SMS</h2>
<span class="anchor" id="line-10"></span><span class="anchor" id="line-11"></span><span class="anchor" id="line-12"></span><ol type="1"><li><p class="line862">Go to <a class="https" href="https://console.twilio.com">https://console.twilio.com</a> <span class="anchor" id="line-13"></span></p></li><li><p class="line862">Go to Develop > Phone Numbers > Manage > Active Numbers <span class="anchor" id="line-14"></span></p></li><li>Click on the phone number you want to add <span class="anchor" id="line-15"></span></li><li>Go to the Configure tab <span class="anchor" id="line-16"></span></li><li><p class="line862">Scroll down to 'Messaging' and change 'A message Comes in' to the url <tt> http://twilio.sgx.soprani.ca/sms </tt> <span class="anchor" id="line-17"></span><span class="anchor" id="line-18"></span><span class="anchor" id="line-19"></span></p></li></ol><p class="line867">
</p><h2 id="Inbound_Calls">Inbound Calls</h2>
<span class="anchor" id="line-20"></span><span class="anchor" id="line-21"></span><ol type="1"><li><p class="line862">In Twilio, go to <tt class="backtick">Develop > Explore Products > Elastic SIP Trunking</tt> and create a new trunk with any name. <span class="anchor" id="line-22"></span></p></li><li>In your new trunk go to Origination settings <span class="anchor" id="line-23"></span></li><li><p class="line862">Add a SIP URI: <tt class="backtick">sip:user%5C40domain.tld%[email protected]</tt> (replace <tt class="backtick">user</tt> with your Jabber ID localpart and <tt class="backtick">domain.tld</tt> with your Jabber ID domainpart) <span class="anchor" id="line-24"></span></p></li><li>In the left panel under your trunk go to Numbers <span class="anchor" id="line-25"></span></li><li><p class="line862">Top-right <tt class="backtick">Add a number > Add an existing number</tt> and choose your number <span class="anchor" id="line-26"></span><span class="anchor" id="line-27"></span></p></li></ol><p class="line874">Incoming calls to that number will now ring you on Jingle. <span class="anchor" id="line-28"></span><span class="anchor" id="line-29"></span></p><p class="line867">
</p><h2 id="Outbound_Calls">Outbound Calls</h2>
<span class="anchor" id="line-30"></span><span class="anchor" id="line-31"></span><ol type="1"><li><p class="line862">In Twilio, go to <tt class="backtick">Develop > Explore Products > Functions</tt> <span class="anchor" id="line-32"></span></p></li><li>Make a new function with any name, use this code: <span class="anchor" id="line-33"></span><ul><li style="list-style-type:none"><span class="anchor" id="line-34"></span><span class="anchor" id="line-35"></span><span class="anchor" id="line-36"></span><span class="anchor" id="line-37"></span><span class="anchor" id="line-38"></span><span class="anchor" id="line-39"></span><span class="anchor" id="line-40"></span><span class="anchor" id="line-41"></span><span class="anchor" id="line-42"></span><span class="anchor" id="line-43"></span><span class="anchor" id="line-44"></span><span class="anchor" id="line-45"></span><span class="anchor" id="line-46"></span><pre><span class="anchor" id="line-1"></span>exports.handler = function(context, event, callback) {
<span class="anchor" id="line-2"></span> let twiml = new Twilio.twiml.VoiceResponse();
<span class="anchor" id="line-3"></span> if(event.From != "SIP URI FROM INBOUND SECTION ABOVE") {
<span class="anchor" id="line-4"></span> console.log("Bad from: " + event.From);
<span class="anchor" id="line-5"></span> twiml.hangup();
<span class="anchor" id="line-6"></span> } else {
<span class="anchor" id="line-7"></span> let tel = event.To.split("@")[0].replace(/^sip:/, "");
<span class="anchor" id="line-8"></span> twiml.dial({ callerId: "YOUR TWILIO NUMBER" }).number(tel);
<span class="anchor" id="line-9"></span> }
<span class="anchor" id="line-10"></span>
<span class="anchor" id="line-11"></span> return callback(null, twiml);
<span class="anchor" id="line-12"></span>};</pre><span class="anchor" id="line-47"></span></li></ul></li><li>Save and "Deploy all" -- make a note of the function's domain name <span class="anchor" id="line-48"></span></li><li><p class="line862">In Twilio, go to <tt class="backtick">Develop > Explore Products > Voice</tt> <span class="anchor" id="line-49"></span></p></li><li>In the sidebar under Manage pick SIP domains <span class="anchor" id="line-50"></span></li><li><p class="line862">Make a domain with any name. Use an IP access control list with the IP <tt class="backtick">51.161.87.91</tt> <span class="anchor" id="line-51"></span></p></li><li><p class="line862">Set "A call comes in" webhook to <tt class="backtick">https://<function domain>/<function path></tt> <span class="anchor" id="line-52"></span></p></li><li>Save <span class="anchor" id="line-53"></span></li><li>Open Gajim or another client that support XML console and sent this XML in the console: <span class="anchor" id="line-54"></span><span class="anchor" id="line-55"></span><ul><li style="list-style-type:none"><span class="anchor" id="line-56"></span><span class="anchor" id="line-57"></span><span class="anchor" id="line-58"></span><span class="anchor" id="line-59"></span><span class="anchor" id="line-60"></span><span class="anchor" id="line-61"></span><span class="anchor" id="line-62"></span><span class="anchor" id="line-63"></span><span class="anchor" id="line-64"></span><span class="anchor" id="line-65"></span><pre><span class="anchor" id="line-1-1"></span><iq to="cheogram.com" type="set" id="cmd1">
<span class="anchor" id="line-2-1"></span> <command xmlns="http://jabber.org/protocol/commands" node="sip-proxy-set">
<span class="anchor" id="line-3-1"></span> <x xmlns="jabber:x:data">
<span class="anchor" id="line-4-1"></span> <field var="sip-proxy">
<span class="anchor" id="line-5-1"></span> <value>YOUR TWILIO SIP DOMAIN</value>
<span class="anchor" id="line-6-1"></span> </field>
<span class="anchor" id="line-7-1"></span> </x>
<span class="anchor" id="line-8-1"></span> </command>
<span class="anchor" id="line-9-1"></span></iq></pre><span class="anchor" id="line-66"></span></li></ul></li><li>Disconnect and reconnect your Jabber account, you should now be able to place voice calls, and send/receive SMS via Cheogram. <span class="anchor" id="line-67"></span></li></ol><span class="anchor" id="bottom"></span></div><p id="pageinfo" class="info" lang="en" dir="ltr">TwilioSetup (last edited 2022-198 00:17:59 by <span title="root @ 89.36.78.171[89.36.78.171]"><a class="nonexistent" href="/root" title="root @ 89.36.78.171[89.36.78.171]">root</a></span>)</p>
<div id="pagebottom"></div>
</div>
<div id="footer">
<ul class="editbar"><li><a href="/TwilioSetup?action=edit&editor=text" name="texteditlink" rel="nofollow">Edit</a></li><li class="toggleCommentsButton" style="display:none;"><a href="#" class="nbcomment" onclick="toggleComments();return false;">Comments</a></li><li><a class="nbinfo" href="/TwilioSetup?action=info" rel="nofollow">Info</a></li><li><a class="nbattachments" href="/TwilioSetup?action=AttachFile" rel="nofollow">Attachments</a></li><li>
<form class="actionsmenu" method="GET" action="/TwilioSetup">
<div>
<select name="action" onchange="if ((this.selectedIndex != 0) &&
(this.options[this.selectedIndex].disabled == false)) {
this.form.submit();
}
this.selectedIndex = 0;">
<option value="show">More Actions:</option><option value="raw">Raw Text</option>
<option value="print">Print View</option>
<option value="RenderAsDocbook">Render as Docbook</option>
<option value="refresh">Delete Cache</option>
<option value="show" disabled="" class="disabled">------------------------</option>
<option value="SpellCheck">Check Spelling</option>
<option value="LikePages">Like Pages</option>
<option value="LocalSiteMap">Local Site Map</option>
<option value="show" disabled="" class="disabled">------------------------</option>
<option value="RenamePage" disabled="" class="disabled">Rename Page</option>
<option value="DeletePage" disabled="" class="disabled">Delete Page</option>
<option value="show" disabled="" class="disabled">------------------------</option>
<option value="show" disabled="" class="disabled">Subscribe User</option>
<option value="show" disabled="" class="disabled">------------------------</option>
<option value="show" disabled="" class="disabled">Remove Spam</option>
<option value="show" disabled="" class="disabled">Revert to this revision</option>
<option value="PackagePages">Package Pages</option>
<option value="SyncPages">Sync Pages</option>
<option value="show" disabled="" class="disabled">------------------------</option>
<option value="Load">Load</option>
<option value="Save">Save</option>
<option value="SlideShow">SlideShow</option>
</select>
</div>
<script type="text/javascript">
<!--// Init menu
actionsMenuInit('More Actions:');
//-->
</script>
</form>
</li></ul>
<ul id="credits">
<li><a href="http://moinmo.in/" title="This site uses the MoinMoin Wiki software.">MoinMoin Powered</a></li><li><a href="http://moinmo.in/Python" title="MoinMoin is written in Python.">Python Powered</a></li><li><a href="http://moinmo.in/GPL" title="MoinMoin is GPL licensed.">GPL licensed</a></li><li><a href="http://validator.w3.org/check?uri=referer" title="Click here to validate this page.">Valid HTML 4.01</a></li>
</ul>
</div>
</body></html>