apps/examples/di_dialer/DIDial.h
e75cecf3
 #include "AmApi.h"
 
e7f0bc41
 #include "ampi/UACAuthAPI.h"
 
e75cecf3
 #include <string>
 using std::string;
 
e7f0bc41
 struct DIDialoutInfo : UACAuthCred {
   string userpart; // user part for dialout
   DIDialoutInfo(const string& userpart, 
 	      const string& realm,
 	      const string& user,
 	      const string& pwd) 
     : userpart(userpart), 
       UACAuthCred(realm, user, pwd) { }
 
   DIDialoutInfo() { }
 };
 
e75cecf3
 class DIDial : public AmDynInvoke
 
 {
   string dialout(const string& application, 
 		 const string& user,
 		 const string& from, 
6b09fd2d
 		 const string& to,
 		 AmArg* extra_params);
e75cecf3
 
e7f0bc41
   string dialout_auth(const string& application, 
 		      const string& user,
 		      const string& from, 
 		      const string& to,
 		      const string& realm, 
 		      const string& a_user,
6b09fd2d
 		      const string& pwd,
 		      AmArg* extra_params);
e7f0bc41
 
4f94c403
   string dialout_auth_b2b(const string& application, 
 		       const string& announcement, 
 		       const string& from, 
 		       const string& to,
 		       const string& caller_ruri, 
 		       const string& callee_ruri,
 		       const string& a_realm, 
 		       const string& a_user, 
 		       const string& a_pwd);
 
e7f0bc41
   string dialout_pin(const string& application, 
 		     const string& user,
 		     const string& to_user,
 		     const string& pin);
 
e75cecf3
   static DIDial* _instance;
  public:
   DIDial();
   ~DIDial();
   static DIDial* instance();
29cc0cf2
   void invoke(const string& method, const AmArg& args, AmArg& ret);
e75cecf3
 };