`
zqb666kkk
  • 浏览: 732512 次
  • 性别: Icon_minigender_1
  • 来自: 宁波
社区版块
存档分类
最新评论

vtiger crm6.0自定义短信服务商二次开发

阅读更多
可能有些人连配置都没法新增 把vtigerCRM\modules\SMSNotifier\models 下的
Provide.php页面的
if (!in_array($file, array('.', '..', 'MyProvider.php', 'CVS'))) {
改成
if (!in_array($file, array('.', '..', 'MyProvider.php', 'SMSProvider.php'))) {

然后进入 SMS供应商配置


vtiger crm6.0默认的是 Clickatell

Clickatell是一家加州的移动网关公司,他们的业务主要是B2C短信,比如帮助商家向客户群发折扣信息、广告和其他通知短信等等。 我们国内一般不用这家公司的短信接口服务
都有自己的服务 


要加自己的配置 这里最下面一句话有提到 https://wiki.vtiger.com/index.php/SMSNotifier_Module


Writing Custom Providers

If you have planning to use SMS service provider and don't find the connector to it, you will need to write one.
SMSNotifier module defines ISMSProvider (modules/SMSNotifier/ext/ISMSProvider.php) interface which should be implemented by your custom provider.
A template sample provide is available at: modules/SMSNotifier/ext/providers/MyProvider.php.sample
Also look at ClickATell provider implementation: modules/SMSNotifier/ext/providers/ClickATell.php

MyProvider.php.sample这个页面时5.4的

6.0没有
所以我们参考 ClickATell.php
把ClickATell.php这个页面复制一份
改个名字  我这里取名 qtsms.php
<?php


class SMSNotifier_qtsms_Provider implements SMSNotifier_ISMSProvider_Model {

	private $userName;
	private $password;
	private $parameters = array();

	const SERVICE_URI = '你的供应商url';
	private static $REQUIRED_PARAMETERS = array();   //具体根据你的短信接口加参数 我的短信接口就一个账号密码 还有一个写死的参数所以这里不需要了放空就行了
       
	/**
	 * Function to get provider name
	 * @return <String> provider name
	 */
	public function getName() {
		return 'qtsms';
	}

	/**
	 * Function to get required parameters other than (userName, password)
	 * @return <array> required parameters list
	 */
	public function getRequiredParams() {
		return self::$REQUIRED_PARAMETERS;
	}

	/**
	 * Function to get service URL to use for a given type
	 * @param <String> $type like SEND, PING, QUERY
	 */
	public function getServiceURL($type = false) {
		return self::SERVICE_URI;
	}

	/**
	 * Function to set authentication parameters
	 * @param <String> $userName
	 * @param <String> $password
	 */
	public function setAuthParameters($userName, $password) {
		$this->userName = $userName;
		$this->password = $password;
	}

	/**
	 * Function to set non-auth parameter.
	 * @param <String> $key
	 * @param <String> $value
	 */
	public function setParameter($key, $value) {
		$this->parameters[$key] = $value;
	}

	/**
	 * Function to get parameter value
	 * @param <String> $key
	 * @param <String> $defaultValue
	 * @return <String> value/$default value
	 */
	public function getParameter($key, $defaultValue = false) {
		if(isset($this->parameters[$key])) {
			return $this->parameters[$key];
		}
		return $defaultValue;
	}

	/**
	 * Function to prepare parameters
	 * @return <Array> parameters
	 */
	protected function prepareParameters() {
//主意 这里的accout和pswd是我 自己公司短信接口的账号和密码参数  你们要根据自己的公司短信接口的账号密码参数来写 这样才能成功调用短信接口 

		return array('account' => $this->userName, 'pswd' => $this->password,'needstatus'=>'true');
		
	}

	/**
	 * Function to handle SMS Send operation
	 * @param <String> $message
	 * @param <Mixed> $toNumbers One or Array of numbers
	 */
	public function send($message, $toNumbers) {
		if(!is_array($toNumbers)) {
			$toNumbers = array($toNumbers);
		}

		$params = $this->prepareParameters();
		$params['msg'] = $message;  //这是我公司短信接口的信息参数名字 根据你具体短信接口 信息参数来写
		$params['mobile'] = implode(',', $toNumbers);
//这是我公司短信接口的手机号码参数名字 根据你具体短信接口 信息参数来写


		$serviceURL = $this->getServiceURL();
		$httpClient = new Vtiger_Net_Client($serviceURL);
		$response = $httpClient->doPost($params);
		$responseLines = split("\n", $response);
		$result = array( 'error' => false, 'statusmessage' => '' );
		
		$res=split(',',$responseLines[0]);
        if($res[1]!=0){
			$result['error']=true;
			$result['statusmessage']='send failed';
			$result['to'] = 'no number';
		}else{
			$result['id'] = $responseLines[1];
			$result['to'] = $toNumbers;
			$result['status']='Processing';
		}

				
		return $result;
		
		
		
	}

	/**
	 * Function to get query for status using messgae id
	 * @param <Number> $messageId
	 */
	public function query($messageId) {
	//echo '12345';
		$params = $this->prepareParameters();
		$params['apimsgid'] = $messageId;

		$serviceURL = $this->getServiceURL(self::SERVICE_QUERY);
		$httpClient = new Vtiger_Net_Client($serviceURL);
		$response = $httpClient->doPost($params);
		$response = trim($response);

		$result = array( 'error' => false, 'needlookup' => 1, 'statusmessage' => '' );
	    //var_dump($response);exit;
	
		if($response==''){
					$result['error'] = true;
					$result['needlookup'] = 0;
					$result['statusmessage'] = '发送失败';
		}
		
		return $result;
	}
}
?>


这个文件新增后 SMS供应商配置新增配置后 下拉框里会多一个qtsms的选项
然后就填自己的参数值了


然后 在客户列表那里点击 发送sms就可以群发短信了
效果图 :



有什么问题 加我qq 6637152交流


  • 大小: 24.2 KB
0
0
分享到:
评论

相关推荐

    vtiger crm 6.0源码包

    Vtiger CRM 6.0 是一款开源的客户关系管理(CRM)系统,它为企业提供了一整套管理和优化销售、市场营销、客户服务等业务流程的工具。这个源码包包含了Vtiger CRM系统的完整代码,允许用户自定义和扩展功能,以适应...

    vTiger CRM 6.0 beta.zip

    可以透过vtiger CRM 的厂商、制造商与经销商等单位取得商品信息*.透过仓库库存量与订单状况的整合来管理及时的库存水准*.可以根据各个组织需求自行调整的客户采购订单(PO)与销售订单(SO)字段*.避免动态显示付款与...

    vTigerCRM6.0.0中文包

    VTIGER CRM 6.0 正式版 简体中文语言包下载472014/01/13 | MAIE | 已有 3,154 次围观 Vtiger CRM 6.0.0 正式版已发布,目前官方网站已放在开源版本下载地址,初步观察 Vitger 6.0 正式版在 Vtiger 6.0 RC 的基础上...

    vTigerCRM 6(安装包+语言包+客户门户+安装手册)

    1. **vTigerCRM 6.0 安装包**:这是vTigerCRM的核心,包含了CRM系统的全部功能模块,如销售自动化、市场营销、客户服务、项目管理等。6.0版本在前代基础上进行了许多改进,例如增强的用户体验、性能优化以及更多的...

    中文VtigerCRM二次开发资料

    ### 中文VtigerCRM二次开发资料解析 #### VtigerCRM简介 VtigerCRM是一款开源的企业资源管理系统,主要用于客户关系管理、销售自动化、市场营销、客户服务等方面。它提供了丰富的功能,包括但不限于联系人管理、...

    使用wampserver部署Vtigercrm8流程

    在IT行业中,部署客户关系管理(CRM)系统是企业日常运营的重要组成部分,Vtiger CRM是一个广泛应用的开源CRM解决方案。本篇文章将详细讲解如何利用WampServer在本地环境上部署Vtiger CRM 8的步骤,这对于开发者和...

    vtiger crm PDF maker PDF导出模块

    Vtiger CRM是一款开源的企业级客户关系...同时,这个模块的开发也遵循了Vtiger CRM的开放源码精神,允许用户自定义和扩展以满足特定需求。对于那些依赖Vtiger CRM来管理销售流程的公司来说,这是一个不可或缺的工具。

    VtigerCRM 中文版使用手册

    ### VtigerCRM 中文版使用手册知识点概览 #### 一、VtigerCRM简介与安装 ...以上是对VtigerCRM中文版使用手册的关键知识点总结,旨在帮助用户全面了解该系统的功能与使用方法,从而更好地服务于企业的CRM管理工作。

    Vtiger+CRM从入门到放弃

    随着对Vtiger CRM的深入使用,用户可能希望探索更高级的功能,如API开发、移动应用、第三方插件等,以进一步提升CRM系统的价值。 总结,Vtiger CRM提供了一整套全面的CRM解决方案,适合那些愿意投入时间和精力学习...

    Vtiger CRM 7.1 简体中文整合版

    Vtiger CRM是一个免费开源客户关系管理系统 ,这是 Vtiger CRM 7.x 版本的第二个稳定性更新,标志着 Vtiger 7.x版本已经逐渐趋于稳定。本资源在官方7.1英文原版基础上集成简体中文语言包。

    vtigercrm 汉化

    Vtiger CRM是一款开源的客户关系管理(CRM)系统,旨在帮助企业更有效地管理客户数据、销售流程、市场营销和服务支持。汉化版的Vtiger CRM是针对中文用户进行了语言本地化的版本,使得中国用户在使用时能更加方便地...

    vTiger CRM vtigerCRM开发笔记

    ### vtigerCRM开发笔记知识点详解 #### 一、Adodb数据库操作类 Adodb是一种用于PHP的开源数据库抽象层,可以实现对多种数据库的支持。在vtigerCRM中,Adodb被广泛应用于数据库的操作中,例如数据查询、更新、插入...

    Vtiger_CRM_7.X 中文语言包

    Vtiger CRM是一款开源的企业级客户关系管理软件,它提供了销售、市场营销和服务自动化等功能,帮助企业高效管理客户信息和业务流程。Vtiger_CRM_7.X版本是该系统的第七个主要迭代,带来了许多新特性、改进和优化,以...

    vtigercrm汉化版(ssdcrm)

    ssdcrm是开源软件vtigercrm的深度汉化整合版本,它继承了vtigercrm灵活而强大的整合功能,方便二次开发与其他应用扩展. 电邮: yue11guang22ming@163.comThis 示范网站:www.89mc.net (账户与密码均为admin) 联系QQ:...

    vTiger CRM v4.2

    vTiger CRM 是开源软件,这意味着用户可以自由地查看、修改和分发源代码,根据企业需求进行定制化开发。 7. **社区支持** 作为开源项目,vTiger CRM 拥有活跃的社区,用户可以在其中获取帮助,分享经验,同时也能...

    vTigercrm简介与简单操作[参照].pdf

    vTigercrm是一种客户关系管理系统(Customer Relationship Management,CRM),旨在帮助企业管理客户关系,提高销售效率和客户服务质量。 CRM系统的核心概念 客户关系管理系统(CRM)是一种商业策略,旨在帮助...

    vtigerCRM5表结构图

    这个资源,"vtigerCRM5表结构图",是对于深入理解VtigerCRM5版本数据库设计和进行二次开发的重要参考资料。下面将详细阐述VtigerCRM5的核心表结构及其对系统功能的影响。 首先,CRM系统的数据存储主要围绕客户、...

    vtigercrm5.4.0 源码文件(非exe集成环境版)

    VtigerCRM的API允许开发者创建自定义模块和插件,以满足特定的业务需求,如集成第三方应用、开发移动应用等。 总之,VtigerCRM 5.4.0的源码版本为企业提供了强大的客户关系管理工具,并且允许深度定制,适合那些...

    pdf maker for vtigercrm 5.3

    VtigerCRM是一款开源的客户关系管理(CRM)系统,旨在帮助企业更有效地管理客户数据、销售流程和客户服务。"PDF Maker for VtigerCRM 5.3" 是一个专门针对VtigerCRM 5.3版本的插件,用于生成和定制PDF文档,尤其适用...

Global site tag (gtag.js) - Google Analytics