Ismerje meg, hogyan tudja beállítani és használni a legkorszerűbb mobil, VoIP, SMS és web funkciókat. |
![]() | Voice and 2D/3D video calls |
![]() | SMS messages |
![]() | Webphone technology |
![]() | PBX for your Office |
![]() | PBX for your Mobile Employees |
Next: Greet Caller by Name
[HttpPost] public ActionResult SayHello(string notificationName, string callLegID, string caller, string apiExtension) { return Content( "<Response>" + "<Speak>Hello!</Speak>" + "</Response>", "text/xml"); }
class SayHelloController < ApplicationController protect_from_forgery except: :index # In routes.rb you need to set the following routing rule # post '/say_hello' => 'say_hello#index' def index render :xml => '<?xml version="1.0" encoding="UTF-8"?> <Response> <Speak>Hello</Speak> </Response>' end end
<?php print "<Response>"; print "<Speak>Hello</Speak>"; print "</Response>"; ?>
#!c:/Perl64/bin/perl.exe print "Content-Type: text/plain\n\n"; #You have to add the directory route of perl.exe, and print the content type #Send response by print print '<?xml version="1.0" encoding="UTF-8"?> <Response> <Speak>Hello</Speak> </Response>'
Imports OPSSDK Imports Ozeki.Media.MediaHandlers Imports OPSSDKCommon.Model.Call Imports Ozeki.VoIP Module Module1 Public Sub Main(args As String()) Dim client = New OpsClient() AddHandler client.ErrorOccurred, Sub(sender, info) Console.WriteLine(info.Message) End Sub If Not client.Login("ozekixepbx.ip", "admin", "12345") Then Return End If Dim apiExtension = client.GetAPIExtension("9000") AddHandler apiExtension.IncomingCall, AddressOf IncomingCall Console.ReadLine() End Sub Private Sub IncomingCall(sender As Object, e As VoIPEventArgs(Of ICall)) Dim [call] = e.Item Dim tts = New TextToSpeech() AddHandler tts.Stopped, Sub(s, ev) [call].HangUp() End Sub [call].ConnectAudioSender(tts) AddHandler [call].CallStateChanged, Sub(s, ev) If ev.Item = CallState.Answered Then tts.AddAndStartText("Hello") ElseIf ev.Item.IsCallEnded() Then tts.Dispose() End If End Sub [call].Accept() End Sub End Module
def application(environ, start_response): SpeakText="Hello" result =""" <?xml version="1.0" encoding="UTF-8"?> <Response> <Speak>{0}</Speak> </Response>""".format(SpeakText) response_headers = [('Content-type', 'text/plain'), ('Content-Length', str(len(result)))] start_response('200 OK', response_headers) return [result]
using System; using OPSSDK; using OPSSDKCommon.Model.Call; using Ozeki.Media.MediaHandlers; using Ozeki.VoIP; namespace OPS_QuickStartExample_CSharp { class Program { static void Main(string[] args) { var client = new OpsClient(); client.ErrorOccurred += (sender, info) => Console.WriteLine(info.Message); if (!client.Login("ozekixepbx.ip", "admin", "12345")) return; var apiExtension = client.GetAPIExtension("9000"); apiExtension.IncomingCall += IncomingCall; Console.ReadLine(); } private static void IncomingCall(object sender, VoIPEventArgse) { var call = e.Item; var tts = new TextToSpeech(); tts.Stopped += (s, ev) => call.HangUp(); call.ConnectAudioSender(tts); call.CallStateChanged += (s, ev) => { if (ev.Item == CallState.Answered) tts.AddAndStartText("Hello"); else if (ev.Item.IsCallEnded()) tts.Dispose(); }; call.Accept(); } } }
package pbxsampleapp; import com.sun.net.httpserver.*; import java.io.*; import java.net.*; public class SayHello { public static void main(String[] args) { try { System.out.println("Starting http server..."); HttpServer server = HttpServer.create(new InetSocketAddress(InetAddress.getByAddress(new byte[]{ 0, 0, 0, 0 }), 12345), 0); server.createContext("/sendsmstocaller", new PbxSampleApp.PBXRequestHandler()); server.start(); System.out.println("http server running on " + server.getAddress().toString()); } catch (IOException ex) { System.out.println("Error" + ex.toString()); } } static class PBXRequestHandler implements HttpHandler { @Override public void handle(HttpExchange httpExchange) throws IOException { httpExchange.getResponseHeaders().add("Content-type", "text/xml"); String response = "<?xml version=\"1.0\"?>" + "<Response>" + "<Speak>Hello!</Speak>" + "</Response>"; httpExchange.sendResponseHeaders(200, response.length()); OutputStream os = httpExchange.getResponseBody(); os.write(response.getBytes()); os.close(); } } }
Recommended reading