Пример #1
0
 public void insertTransferedUser(TransferedUser transferedUser)
 {
     using (SqlConnection connection = new SqlConnection(CS))
     {
         SqlCommand insertTransferedUserCmd = new SqlCommand("insert into transferedUser(name_user, original_context, original_asterisk, current_asterisk)" +
             "values(@name_user, @original_context, @original_asterisk, @current_asterisk)", connection);
         insertTransferedUserCmd.Parameters.AddWithValue("@name_user", transferedUser.name_user);
         insertTransferedUserCmd.Parameters.AddWithValue("@original_context", transferedUser.original_context);
         insertTransferedUserCmd.Parameters.AddWithValue("@original_asterisk", transferedUser.original_asterisk);
         insertTransferedUserCmd.Parameters.AddWithValue("@current_asterisk", transferedUser.current_asterisk);
         SqlDataAdapter sda = new SqlDataAdapter(insertTransferedUserCmd);
         connection.Open();
         insertTransferedUserCmd.ExecuteNonQuery();
     };
 }
Пример #2
0
 public TransferedUser selectTransferedUser(string name_user)
 {
     TransferedUser transferedUser = new TransferedUser();
     DataSet ds = new DataSet();
     using (SqlConnection connection = new SqlConnection(CS))
     {
         SqlCommand selectTransferedUserCmd = new SqlCommand("select * from transferedUser where name_user = @name_user", connection);
         selectTransferedUserCmd.Parameters.AddWithValue("@name_user", name_user);
         SqlDataAdapter sda = new SqlDataAdapter(selectTransferedUserCmd);
         connection.Open();
         sda.Fill(ds);
         selectTransferedUserCmd.ExecuteNonQuery();
     };
     DataTable dt = ds.Tables[0];
     foreach (DataRow item in ds.Tables[0].Rows)
     {
         transferedUser.name_user = item["name_user"].ToString();
         transferedUser.original_context = item["original_context"].ToString();
         transferedUser.original_asterisk = item["original_asterisk"].ToString();
         transferedUser.current_asterisk = item["current_asterisk"].ToString();
         return transferedUser;
     }
     return null;
 }
Пример #3
0
 private void transferUser(string asteriskFrom, string asteriskTo, string userName, List<string> userDetailList)
 {
     Asterisks destinationAsterisk = asteriskAccessLayer.SelectAsterisksByName(asteriskTo);
     try
     {
         string originalContext;
         transferedUser = new TransferedUser();
         login(destinationAsterisk.ip_address, destinationAsterisk.login_AMI, Utils.DecryptAMIPassword(destinationAsterisk.password_AMI));
         relocateUser(userName, userDetailList, out originalContext);
         transferedUser.name_user = userName;
         transferedUser.original_context = originalContext;
         transferedUser.original_asterisk = asteriskFrom;
         transferedUser.current_asterisk = asteriskTo;
     }
     catch (AsterNET.Manager.AuthenticationFailedException afe) { }
     catch (AsterNET.Manager.TimeoutException to) { }
     catch (AsterNET.Manager.ManagerException me) { }
 }
Пример #4
0
 protected void sendUpdateDialPlanRequest(UpdateMessages message, TransferedUser transferedUser, string newCurrentAsterisk)
 {
     updateExtensionsConfig = new UpdateConfigAction(EXTENSIONS_CONFIG, EXTENSIONS_CONFIG, true);
     switch (message)
     {
         case UpdateMessages.addToTrunkContextInOriginal:
             updateExtensionsConfig.AddCommand(UpdateConfigAction.ACTION_APPEND, transferedUser.original_asterisk, "exten", transferedUser.name_user + ",1,Dial(SIP/${EXTEN})");
             break;
         case UpdateMessages.addToOriginalContext:
             updateExtensionsConfig.AddCommand(UpdateConfigAction.ACTION_APPEND, transferedUser.original_context, "exten", transferedUser.name_user + ",1,Dial(SIP/${EXTEN}@" + transferedUser.current_asterisk + ")");
             break;
         case UpdateMessages.addToOthersAsteriskDialPlans:
             updateExtensionsConfig.AddCommand(UpdateConfigAction.ACTION_APPEND, transferedUser.original_asterisk, "exten", transferedUser.name_user + ",1,Dial(SIP/${EXTEN}@" + transferedUser.current_asterisk + ")");
             break;
         case UpdateMessages.deleteInOriginalContext:
             updateExtensionsConfig.AddCommand(UpdateConfigAction.ACTION_DELETE, transferedUser.original_context, "exten", transferedUser.name_user + ",1,Dial(SIP/${EXTEN}@" + transferedUser.current_asterisk + ")", transferedUser.name_user + ",1,Dial(SIP/${EXTEN}@" + transferedUser.current_asterisk + ")");
             break;
         case UpdateMessages.deleteFromSourceAsteriskDialPlan:
             updateExtensionsConfig.AddCommand(UpdateConfigAction.ACTION_DELETE, transferedUser.original_asterisk, "exten", transferedUser.name_user + ",1,Dial(SIP/${EXTEN})", transferedUser.name_user + ",1,Dial(SIP/${EXTEN})");
             break;
         case UpdateMessages.deleteFromRestAsteriskDialPlan:
             updateExtensionsConfig.AddCommand(UpdateConfigAction.ACTION_DELETE, transferedUser.original_asterisk, "exten", transferedUser.name_user + ",1,Dial(SIP/${EXTEN}@" + transferedUser.current_asterisk + ")", transferedUser.name_user + ",1,Dial(SIP/${EXTEN}@" + transferedUser.current_asterisk + ")");
             break;
         case UpdateMessages.updateDialPlanInDestinationAsterisk:
             updateExtensionsConfig.AddCommand(UpdateConfigAction.ACTION_UPDATE, transferedUser.original_asterisk, "exten", transferedUser.name_user + ",1,Dial(SIP/${EXTEN})", transferedUser.name_user + ",1,Dial(SIP/${EXTEN}@" + transferedUser.current_asterisk + ")");
             break;
         case UpdateMessages.updateInCurrentAsteriskDialPlan:
             updateExtensionsConfig.AddCommand(UpdateConfigAction.ACTION_UPDATE, transferedUser.original_asterisk, "exten", transferedUser.name_user + ",1,Dial(SIP/${EXTEN}@" + transferedUser.current_asterisk + ")", transferedUser.name_user + ",1,Dial(SIP/${EXTEN})");
             break;
         case UpdateMessages.updateInOriginalAsteriskDialPlan:
             updateExtensionsConfig.AddCommand(UpdateConfigAction.ACTION_UPDATE, transferedUser.original_context, "exten", transferedUser.name_user + ",1,Dial(SIP/${EXTEN}@" + newCurrentAsterisk + ")", transferedUser.name_user + ",1,Dial(SIP/${EXTEN}@" + transferedUser.current_asterisk + ")");
             break;
         case UpdateMessages.updateInRestAsteriskDialPlan:
             updateExtensionsConfig.AddCommand(UpdateConfigAction.ACTION_UPDATE, transferedUser.original_asterisk, "exten", transferedUser.name_user + ",1,Dial(SIP/${EXTEN}@" + newCurrentAsterisk + ")", transferedUser.name_user + ",1,Dial(SIP/${EXTEN}@" + transferedUser.current_asterisk + ")");
             break;
         default:
             break;
     }
     managerResponse = managerConnection.SendAction(updateExtensionsConfig);
     if (!managerResponse.IsSuccess() && !rollbackState)
     {
         throw new ManagerException(managerResponse.Message);
     }
 }