目录 上一页 下一页 索引

第 4 章

配置功能


部署 Content Delivery Server 后,请设置需要支持的功能。确保在继续配置之前已成功部署了所需的所有 Content Delivery Server 组件,请参见第 3 章“部署 Content Delivery Server”

本节包括以下主题:

4.1 配置 Content Delivery Server 服务

Content Delivery Server 服务需要配置和环境信息才能正常运行。可以通过设置每个服务使用的属性文件中的属性来提供此信息。在部署此服务的主机上设置这些属性。

4.1.1 配置消息传送服务

如果希望 Content Delivery Server 支持短消息服务 (SMS) 和无线应用程序协议 (WAP) 推送消息传送格式,则需要配置消息传送服务。

有关配置系统以支持推送传送的其他信息,请参见《Sun Java System Content Delivery Server 集成指南》。

4.1.1.1 配置 WAP 推送的消息传送服务

要配置 WAP 推送支持的消息传送服务,请执行以下操作:

  1. 打开 MsgService.properties 文件。此文件位于
    $CDS_HOME/deployment/deployment-name/conf 目录中。
  2. 设置环境所需的 WAP 和 PPG 属性。例如:
  3. #WAP and PPG properties 
    asyncmsg.wap.ppg= 
    asyncmsg.wap.id=CDS 
    asyncmsg.wap.ip.bearer= 
    asyncmsg.wap.priority=high  
    asyncmsg.wap.bearer_type=SMS  
    asyncmsg.wap.bearer_required=false  
    asyncmsg.wap.delivery_method=unconfirmed 
    asyncmsg.wap.network_type=GSM 
    asyncmsg.wap.netwok_required=true 

4.1.1.2 配置 SMS 的消息传送服务

Content Delivery Server 支持以下 SMS 推送协议:SMPP(对等短消息)、SMS HTTP 和 CIMD2。为使用的协议配置消息传送服务。

要配置 SMPP 推送支持的消息传送服务,请执行以下操作:

  1. 打开 MsgService.properties 文件。此文件位于
    $CDS_HOME/deployment/deployment-name/conf 目录中。
  2. 设置环境所需的 SMS 属性。
  3. 下面是 SMPP 推送适配器的样例属性:

    smsc.hostname = 127.0.0.1 
    smsc.port = 11111 
    esme.system_id=user1 
    esme.password = usrpw 
    esme.system_type = 
    esme.destination= 
    smsc.gsm.ton = 2 
    smsc.gsm.npi = 0 
    
  4. 设置环境所需的推送发送器属性。
  5. 下面是 SMPP 推送适配器的样例属性:

    pushsender.send.keep_alive=true 
    pushsender.keep_alive.milliseconds=30000 
    
  6. 设置可用于对从服务器传出的消息进行分类的属性。
  7. 是否设置这些属性均可。SMSC 可以将其用于记帐或其他目的。如果没有为任何服务类型输入值,将使用 default.service_type 的值。

    subscriber_detail_url.service_type= 
    mobile_originated_detail_url.service_type= 
    gifting_detail_url.service_type= 
    content_sharing_detail_ur.service_type= 
    password_reminder.service_type= 
    campaign_message.service_type= 
    default.service_type=  

要配置 CIMD2 推送支持的消息传送服务:

  1. 打开 MsgService.properties 文件。此文件位于
    $CDS_HOME/deployment/deployment-name/conf 目录中。
  2. 设置环境所需的 SMS 属性。
  3. 下面是 CIMD2 推送适配器的样例属性:

    smsc.hostname = 127.0.0.1 
    smsc.port = 11111 
    esme.system_id=user1 
    esme.password = usrpw 

要配置 SMS HTTP 推送支持的消息传送服务:

  1. 打开 MsgService.properties 文件。此文件位于
    $CDS_HOME/deployment/deployment-name/conf 目录中。
  2. 设置环境所需的 SMS 属性。
  3. 下面是 SMS HTTP 推送适配器的样例属性:

    # SMS HTTP properties 
    sms.http.serverurl= 
    sms.http.user= 
    sms.http.password= 
    sms.http.from=CDS 

注-对于 SMS HTTP,参数名与提供的缺省值不同。另外,可能还需要编写自己的 SMS HTTP 推送适配器。要将系统配置为使用正确的适配器,请参见《Sun Java System Content Delivery Server 集成指南》。要编写自己的适配器,请参见《Sun Java System Content Delivery Server 定制指南》中的“消息传送 API”信息。

4.1.2 配置推送监听器服务

要使 Content Delivery Server 支持移动起始的推送消息,请配置推送监听器服务。支持以下两种 SMS 推送协议:SMPP 和 CIMD2。

可以将推送监听器服务配置成支持多个到 SMSC 的连接。使用的连接取决于请求的数据类型。已经定义了下列数据类型:

要配置推送监听器服务:

  1. 编辑 PushListener.properties 文件。此文件位于
    $CDS_HOME/deployment/deployment-name/conf 目录中。
  2. 设置环境所需的连接属性。
  3. 这些属性用于所有连接。下面是 SMPP 推送监听器适配器的样例设置:

    pushlistener.smsc.hostname = 127.0.0.1 
    pushlistener.smsc.port = 11111 
    pushlistener.esme.system_id.regular_content = user1 
    pushlistener.esme.password.regular_content = usrpw 
    pushlistener.esme.system_type= 
    pushlistener.esme.destination= 
    pushlistener.smsc.gsm.ton = 2 
    pushlistener.smsc.gsm.npi = 0 
    

    下面是 CIMD2 推送监听器适配器的样例设置:

    pushlistener.smsc.hostname = 127.0.0.1 
    pushlistener.smsc.port = 11111 
    pushlistener.esme.system_id.regular_content = user1 
    pushlistener.esme.password.regular_content = usrpw 
    
  4. 设置要支持的连接的属性。
  5. 要支持常规内容,需设置下列属性:

    pushlistener.esme.system_id.regular_content = 
    pushlistener.esme.password.regular_content = 
    

    要支持活动,需设置下列属性:

    pushlistener.esme.system_id.campaign = 
    pushlistener.esme.password.campaign = 
    

    要用单个连接支持所有数据类型:

    1. 通过在每行的开始位置加上 # 来注释与特定的连接类型相关的所有属性。
    2. 通过删除每行开始位置的 # 来取消对下列行的注释。
    3. pushlistener.esme.system_id.all = 
      pushlistener.esme.password.all = 
      pushlistener.cds_mopush_url.all = mo_push.do 
      
    4. 将 pushlistener.esme.system_id.all 和 pushlistener.esme.password.all 属性设置为系统所要求的值。
    5. 设置 $CDS_HOME/deployment/deployment-name/conf 目录下 SubscriberPortal.properties 文件中的下列属性。
    6. mopush.regular_content.prefix= 
      mopush.campaign.prefix= 
      

      指定的前缀必须包括在发送的 SMS 消息中。例如,如果内容 ID 是 1000mopush.regular_content.prefixRC,则处理程序所期望的 "smsmsg" 消息格式是 RC1000

4.1.3 配置后付费服务

如果希望 Content Delivery Server 支持后付费记帐模型,则需要配置后付费服务。要配置后付费服务:

  1. 打开 PostpaidService.properties 文件进行编辑。此文件位于 $CDS_HOME/deployment/deployment-name/conf 目录中。
  2. 记帐事件的属性指定要处理的记帐事件。将要处理的事件设置为 true。将不希望处理的事件设置为 false。如果要处理免费试用的记帐事件,请将 postpaid.billingevent.process_free_downloads 设置为 true
  3. 下面是记帐事件的样例设置:

    postpaid.billingevent.type.download_initiated=false 
    postpaid.billingevent.type.download_install_notified=true 
    postpaid.billingevent.type.download_error=true 
    postpaid.billingevent.type.content_purchased=true 
    postpaid.billingevent.type.content_refunded=true 
    postpaid.billingevent.type.subscription_purchased=true 
    postpaid.billingevent.type.subscription_cancelled=true 
    postpaid.billingevent.type.usage_purchased=true 
     
    postpaid.billingevent.process_free_downloads=false 
    
  4. 如果记帐系统要求不使用 Content Delivery Server 内容标识符来标识内容,请执行以下任务:
    1. common.external_content_id.enable 属性设置为 true
    2. 如果此属性为 true,存储内容时管理员将收到提供记帐系统已知的内容 ID 和组 ID 的提示。

    3. 打开 external_content_id_selection.xml 文件进行编辑。此文件位于 $CDS_HOME/deployment/deployment-name/conf/resources 目录中。
    4. 要向管理员提供已知内容 ID 的列表,请为 content_id 元素下的每个已知内容 ID 添加 entry 元素。例如:
    5. <content_id>
          <entry default="true">ID-1A</entry>
          <entry>ID-1B</entry>
          <entry>ID-1C</entry>
      </content_id>

      对于自动存储的内容,外部内容 ID 将被设置为包含特性 default="true"entry 元素的值。

    6. 要向管理员提供已知组 ID 的列表,请为 group_id 元素下的每个已知组 ID 添加 entry 元素。例如:
    7. <group_id>
          <entry>Games</entry>
          <entry>Pictures</entry>
      </group_id>

  5. 如果不希望为记帐记录生成归档文件,请按以下方式设置下列属性:
  6. postpaid.output.refresh.frequency=
    postpaid.output.refresh.size=0

    使用这些设置,可将记帐记录添加到单个文件,此文件将不断增长,直到服务停止。如果希望在编写一定数量的记录后创建归档文件,请将 postpaid.output.refresh.size 设置为此记录数。要每天都创建归档文件,请将 postpaid.output.refresh.frequency 设置为 daily

  7. 如果希望恢复过去的记帐记录,请设置下列属性:

下次启动后付费服务时,指定时间段的记帐记录将写入 $CDS_HOME/deployment/deployment-name/conf/Postpaid.recover 文件。完成恢复过程后,文件将被重命名为 Postpaid.recover.timestamp

如果不希望向此文件写入任何过去的记录,请将停止点的时间设置为比开始点的时间早。

4.1.4 配置监视服务

要将应用程序监视代理与网络监视系统集成,需要配置监视服务。可以将监视服务配置为只发出您感兴趣的警报,禁用您不感兴趣的警报。第 C.1.1 节“应用程序监视代理”中介绍了监视代理发出的状态和警报。

要配置监视服务,请编辑 $CDS_HOME/deployment/deployment-name/conf 目录中的 CDSSnmp.properties 文件。表 7 介绍了这些属性。

表 7-监视服务属性
属性
说明
snmp.trap.disabled
表示是否应禁用所有陷阱。将其设置为 true 可以禁用所有陷阱并忽略各个陷阱的 snmp.trap.alarm.enabled 属性。将其设置为 false 可以接受各个陷阱的设置。
snmp.trap.v1
表明是生成 SNMP v1 陷阱还是生成 SNMP v2 陷阱。将此属性设置为 true 将生成 SNMP v1 陷阱。设置为 false 将生成 SNMP v2 陷阱。
snmp.agent.address
运行监视服务的主机的 IP 地址。
snmp.agent.port
运行监视服务的主机的端口号。
snmp.manager.address
运行网络管理系统的主机的 IP 地址。
snmp.manager.port
运行网络管理系统的主机的端口号。
snmp.oid.base
根节点的绝对对象标识符 (OID) 值。其他 Content Delivery Server OID 将指定为此基值的相对值。
标量对象定义
status 是提供状态的组件的名称。例如,eventServiceStatus。有关有效状态的信息,请参见第 C.1.1 节“应用程序监视代理”
snmp.object.status.oid
此对象的 MIB 标识符。
注意:请不要更改此值。
snmp.object.status.handler
此对象的处理程序。
注意:请不要更改此值。
snmp.object.status.attr.
pidfile
包含此对象进程 ID 的文件的名称和位置。
注意:请不要更改此值。
陷阱定义
alarm 是发出的警报的名称。例如,downloadFailure。有关有效警报的信息,请参见第 C.1.1 节“应用程序监视代理”
snmp.trap.alarm.oid
此对象的 MIB 标识符。
注意:请不要更改此值。
snmp.trap.alarm.severity
此警报的严重程度:
  • 1 = 高
  • 2 = 中
  • 3 = 低
snmp.trap.alarm.enabled
表明警报是否发出。将其设置为 true 以允许发出警报。将其设置为 false 以防止发出警报。缺省值为 true。如果 snmp.trap.disabledtrue,则忽略此设置。

4.1.5 配置确认监听器服务

如果希望 Content Delivery Server 在一步成功下载内容后处理来自设备的用户数据报协议 (UDP) 确认消息,则需要配置确认监听器设备。要配置此设备:

  1. 编辑 ConfirmListener.properties 文件。此文件位于
    $CDS_HOME/deployment/deployment-name/conf 目录中。
  2. udp.confirm_listener.port 属性设置为设备将确认消息发送到的端口号。此端口号由设备制造商和无线运营商指定。缺省值为 2003。
  3. 例如,udp.confirm_listener.port=2003

有关处理 MMS 确认消息的信息,请参见《Sun Java System Content Delivery Server 集成指南》。

4.2 配置 SMS 推送消息

缺省的 SMS 推送消息包含来自 Content Delivery Server 的消息和要下载的内容的 URL。例如:

Download:Application Name 
http://servername:port/subscriber/main/ddd?subid=101&riid=115 

如果发送的消息长度存在问题,则可以将此消息限制为仅为来自 Content Delivery Server 的消息或仅为 URL。编辑 $CDS_HOME/deployment/deployment-name/conf 目录中的 sms_push_msg_templete.xsl 模板。

以下代码显示了一个模板样例。

1. <?xml version="1.0" ?>  
2. <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 
3. version="1.0"> 
4. <xsl:output method="text" indent="yes" />  
5. <xsl:template match="/"> 
6. <xsl:value-of select="/SMSMessage/MESSAGE" />  
7. <xsl:value-of select="/CDSSMSMessage/HREF" />  
8. </xsl:template> 
9. </xsl:stylesheet> 

要将消息限制为仅为来自 Content Delivery Server 的消息,请删除第 7 行。要将消息限制为仅为 URL,请删除第 6 行。

4.3 配置 MMS 支持

要使 Content Delivery Server 通过 MMS 传送内容,必须配置 VSAdminConsole.propertiesSubscriberPortal.propertiesMsgService.properties 文件中的 MMS 消息传送属性。MMSC(多媒体消息服务中心)根据您为属性输入的值来处理 MMS 消息。表 8 中介绍了 MMS 消息传送属性及其值。

  1. 编辑 VSAdminConsole.propertiesSubscriberPortal.properties 文件。这两个文件位于 $CDS_HOME/deployment/deployment-name/conf 目录中。
  2. 在每个文件中设置下列 MMS 消息传送属性。每个文件中的值都必须匹配。
  3. 下面是 MMS 支持的样例设置:

    mms_smil.template.filename=mms_smil_template.xsl 
    mms.message.class=AUTO 
    mms.message.priority=NORMAL 
    mms.message.sender.visibility=SHOW 
    mms.message.read_report_required=true 
    mms.message.delivery_report_required=true 
    admin.mms.from.address=address@host.com 
    
  4. 此外还需要设置 SubscriberPortal.properties 文件中的以下属性。样例设置是:
  5. mms.fallback.pushtype=sms 
    

    注意,也必须为 Content Delivery Server 配置您指定的服务。有关配置 SMS 或 WAP 的详细信息,请参见第 4.1.1 节“配置消息传送服务”

  6. 编辑 MsgService.properties 文件。此文件位于 $CDS_HOME/deployment/deployment-name/conf 目录中。
  7. 设置 MMS 发送器类的完整类名:
  8. 此属性的样例设置是:

    mms.senderclass=com.sun.content.server.server.msgserver.push.TestMMSSenderImpl 

表 8-MMS 消息传送属性
MMS 属性名
说明
admin.mms.from.address
用于发送 MMS 内容的电子邮件或电话号码。
mms.fallback.pushtype
标识在不使用 MMS 时推送消息的替代机制。有效值是:
  • sms(缺省)-短消息服务
  • wap-无线应用程序协议
假定为 Content Delivery Server 配置了替代机制。有关详细信息,请参见第 4.1.1 节“配置消息传送服务”
mms.message.class
为 MMSC 提供消息类别。有效值是:
  • 广告
  • 自动(缺省)
  • 信息
  • 个人
mms.message.delivery_report_required
表明是否应从订户设备得到传送报告。有效值是:
  • true-(缺省)要求应从订户设备收到传送报告。
  • false-不要求传送报告。例如,作为促销活动一部分发送给订户的消息可以将此属性设置为 false
mms.message.priority
为 MMSC 提供消息的优先级。有效值是:
  • 一般(缺省)
mms.message.read_report_required
表明是否应从订户设备获得表明消息已被阅读的消息。有效值是:
  • true-(缺省)要求应该从订户设备获得已阅读的报告。
  • false-不要求已阅读的报告。例如,作为促销活动一部分发送给订户的消息可以将此属性设置为 false
mms.message.sender.visibility
表明显示还是隐藏消息发送者的姓名。有效值是:
  • HIDE-MMS 消息中不显示发送者的姓名。
  • SHOW-(缺省)MMS 消息中将显示发送者的姓名。
mms.senderclass
实现 MMSSender 类的类完整名称。MMSSender 类位于 cdsapi 模块中。
mms_smil.template.filename
用于创建同步多媒体集成语言 (SMIL) 数据的 XSL 模板的名称。此属性的值表示为模板文件及其路径的名称,且与 conf 目录相关。

4.4 配置接口组件

Content Delivery Server 的接口组件是 Developer Portal、Subscriber Portal、Catalog Manager 管理控制台和 Vending Manager 管理控制台。Content Delivery Server 提供了很多属性,可以通过设置这些属性来配置这些接口使其符合要求。每个接口自身都具有包含该接口的属性的文件,还具有一个包含适用于所有接口的属性的通用文件。

4.4.1 设置通用属性

表 9 介绍了可以在 $CDS_HOME/deployment/deployment-name/conf 目录的 CommonConsole.properties 文件中设置的属性。这些属性适用于所有 Content Delivery Server 接口。

表 9-CommonConsole.properties 文件中的属性
特性
说明
属性
最大文件大小
允许的最大文件大小。此大小适用于提交到 Content Delivery Server 的所有文件,包括提交软件包和库。
web.common.upload_max_size
将其设置为要接受的最大文件的大小(以 MB 为单位)。缺省值为 10。
最大的类别深度
Catalog Manager 和 Vending Manager 的类别分层结构中最大的级别数。例如,如果将此属性设置为 3,则主类别可以具有子类别,子类别还可以具有子类别。
catalog.categories.max
将其设置为要支持的类别级别数。缺省值为 10。
缺省的最大应用程序大小
定义设备时用作设备的最大应用程序大小的缺省大小。
handset.default.maximum.application.size
将其设置为要使用的大小(以字节为单位)。缺省值为 64000。

4.4.2 设置 Developer Portal 属性

表 10 介绍了可以在 $CDS_HOME/deployment/deployment-name/conf 目录的 DeveloperPortal.properties 文件中设置的属性。这些属性仅适用于 Developer Portal。

表 10-DeveloperPortal.properties 文件中的属性
特性
说明
属性
每页的项目数
使用 Developer Portal 时每页显示的最大项目数。
developer.pagination.display.max
将此属性设置为希望每页显示的项目数。缺省值为 20。
页面阈值
列表导航栏在页面的底端重复之前在此页面上必须显示的项目数。如果项目数少于指定的数目,列表导航栏将仅显示在页面顶端。
developer.pagination.display.threshold
将此属性设置为在页面的结尾位置显示列表导航栏之前在此页面上必须显示的项目数。缺省值为 15。

4.4.3 设置 Subscriber Portal 属性

表 11 介绍了可以在 $CDS_HOME/deployment/deployment-name/conf 目录的 SubscriberPortal.properties 文件中设置的属性。这些属性仅适用于 Subscriber Portal。

表 11-SubscriberPortal.properties 文件中的属性
特性
说明
属性
自动创建设备
使订户使用的未知设备自动添加到带有 HTTP 头信息的 Content Delivery Server 数据库。由于头信息可能不完整,因此将提供用于隔离该设备的选项,直到管理员完成定义。可以在新建设备时发送通知电子邮件。
  • autoCreate.newDevice
  • 将此属性设置为 true 可以允许自动将未知设备添加到数据库。将此属性设置为 false 可以防止自动添加设备。
  • quarantine.newDevice
  • 将此属性设置为 true 可以隔离新添加的设备。将此属性设置为 false 可以立即使用该设备。检测到的设备可能未完整定义。
  • newDevice.notification.emailAddress
  • 将此属性设置为应该将新设备的通知发送到的电子邮件地址。
自动创建订户
在未注册的订户从其设备访问 Subscriber Portal 时自动创建订户。是否将新订户添加到订户数据库取决于自动置备属性的设置。
autoCreate.newUser
将此属性设置为 true 可以创建订户。
将此属性设置为 false 可以防止新建订户。
自动登录用户
根据 URL 参数而不是用户名和密码来启用设备登录。基于订户 ID 的自动登录将用于查找 URL 中的 subId 参数。基于用户名的自动登录用于查找 URL 中的用户参数。这两个选项主要用于演示系统。其他自动登录取决于 WAP 网关传递的头。
autoLogin.uniqueId.enable
autoLogin.mobileId.enable
autoLogin.subscriberId.enable
autoLogin.username.enable
将这些属性设置为 true 可以启用设备上的自动登录功能。将这些属性设置为 false 可以禁用设备上的自动登录功能。
自动置备
使订户不必先注册即可从 Content Delivery Server 下载内容。如果启用了自动置备功能且未注册的订户尝试下载内容,则使用 MSISDN 号创建订户帐户并允许进行下载。
  • auto_provision.unknown.user
  • 将此属性设置为 true 可以启用自动置备功能。将其设置为 false 可以禁用自动置备功能。
  • auto_provision.unknown.userpeer
  • 将此属性设置为 true,订户不必先通过 Content Delivery Server 注册即可访问系统。将此属性设置为 false 可以强制订户注册。
确认购买
指定订户在每次购买内容前是否必须同意一组已定义的条款和条件。
device.confirmPurchase
将此属性设置为 true 可以在购买过程中包括“条款和条件”页面。设置为 false 可以不包括“条款和条件”页面。
动态标题
指定在桌面主页上显示的动态 HTML 的路径。
dynamic_banner.default.path
将此属性设置为在桌面主页上显示的动态 HTML 的路径。
编码
指定内容类型和输出流的编码类型,每个属性中的 device-id 标识的设备都支持该类型。
要指定编码的缺省类型,请将 0 用作设备 ID。
要获得特定设备的 ID,请将鼠标放在 Catalog Manager 管理控制台“设备管理”页中的模型名上。浏览器状态区域中显示的命令中将包含此 ID。
  • descriptor.contentType.encoding.device-id
  • 将此属性设置为下载 Java 应用程序描述符 (JAD) 文件时要包含在 Content-Type HTTP 头中的缺省字符集编码字符串,例如 ISO-8859-1。如果设备无法处理 Content-Type 头中的字符集包含,请将该属性设置为 none
  • descriptor.outputStream.encoding.device-id
  • 将此属性设置为输出流所使用的编码类型。例如,ISO-8859-1
隐藏或禁用注册链接
防止未知订户访问桌面门户上的注册页面和注册服务。
  • desktop.signup.disable_link
  • 将此属性设置为 true 可以禁用指向注册页面的链接。设置为 false 可以启用该链接。
  • desktop.signup.hide_link
  • 将此属性设置为 true 可以隐藏指向注册页面的链接。设置为 false 可以显示该链接。
每页的项目数
使用 WML Portal 时每页显示的最大项目数。
wml.display.no_of_items_per_page
将此属性设置为希望每页显示的项目数。缺省值为 5。
负载平衡器 cookie
如果要使用负载平衡器将通信流量路由到其他 CDS 服务器,则可向每个请求添加关键字/值对以确保订户会话通过负载平衡器“粘到”特定服务器上。
  • lb.cookiename
  • 将此属性设置为由负载平衡器评估的关键字名。
  • lb.cookievalue
  • 将此属性设置为与由负载平衡器评估的关键字关联的值。
“我的活动”中的项目数
订户的“我的活动”列表中显示的项目数。将显示最新添加的项目。如果还有其他项目没有显示出来,将提供查看所有项目的链接。
desktop.display.numberOfItemsInMyCampaigns
将此属性设置为最初显示的项目数。设置为 -1 可以显示所有项目。缺省值为 5。
桌面内容链接中的项目数
搜索或浏览结果中显示的项目数。如果还有其他项目没有显示出来,将提供查看整个结果集的导航选项。
desktop.display.numberOfItemsInContentList
将此属性设置为希望每个结果页显示的项目数。缺省值为 20。
“我的下载”中的项目数
订户的“我的下载”列表中显示的项目数。将显示最新下载的项目。如果还有其他项目没有显示出来,将提供查看所有项目的链接。
desktop.display.numberOfItemsInMyPurchases
将此属性设置为最初显示的项目数。设置为 -1 可以显示所有项目。缺省值为 5。
“我的礼品”中的项目数
订户的“我的礼品”列表中显示的项目数。将显示最新添加的项目。如果还有其他项目没有显示出来,将提供查看所有项目的链接。
desktop.display.numberOfItemsInMyGiftings
将此属性设置为最初显示的项目数。设置为 -1 可以显示所有项目。缺省值为 5。
“我的愿望列表”中的项目数
订户的“我的愿望列表”中显示的项目数。将显示最新添加的项目。如果还有其他项目没有显示出来,将提供查看所有项目的链接。
desktop.display.numberOfItemsInMyWishlist
将此属性设置为最初显示的项目数。设置为 -1 可以显示所有项目。缺省值为 5。
登录尝试次数
订户在帐户被锁定之前尝试登录和失败的次数。
user.security.max_login_attempts
将此属性设置为允许的登录尝试次数。设置为 0 可以允许无限次登录。缺省值为 3。
密码提醒
订户忘记密码时显示的选项。至少将一个选项设置为 true 才能使订户收到密码提醒。
  • password_reminder.template.filename
  • 将此属性设置为用于生成密码提醒消息的样式表的名称。
  • password_reminder.firstnameenabled
  • password_reminder.lastnameenabled
  • 将这些属性设置为 true 可以在密码提醒屏幕上看到这些字段。设置为 false 可以隐藏这些字段。
  • password_reminder.emailenabled
  • 将此属性设置为 true 可以为订户提供将密码提醒发送到其电子邮件中的选项。设置为 false 可以在订户设备中隐藏此选项。
  • password_reminder.webalertenabled
  • 将此属性设置为 true 可以为订户提供将密码提醒作为报警发送到其设备中的选项。设置为 false 可以在订户设备中隐藏此选项。
推送
启用或禁用 SMS 和 WAP 推送消息的发送。设置推送消息的缺省类型。
wap.push.enable
sms.push.enable
将这些属性设置为 true 可以启用消息推送。将这些属性设置为 false 可以禁用消息推送。
default.pushType
指定要发送的推送消息的缺省类型。有效值为 smswap
快速购买
通过使用订户在登录时收到的数据或检索的内容验证购买,而非验证前更新数据,启用快速购买过程。验证检查包括验证订户是否已被禁用或者内容是否尚未激活。
quick.purchase.enabled
将此属性设置为 false 可以在购买时间进行所有验证检查。将此属性设置为 true 可以使用订户登录或上次检索内容时所检索的数据。
快速浏览
每个用户会话仅查找一次类别中的项目数和某个项目的下载次数,从而快速装入页面。
quick.browse.enabled
将此属性设置为 false 可以每次请求时都查询计数。将此属性设置为 true 可以每个用户会话查找一次计数。
共享内容到期时间
礼品到期之前可以兑换的天数。
share_content.gifting.expirationDays
将此属性设置为可兑换礼品的天数。
共享内容模板
用于生成礼品消息的模板。
share_content.template.filename
将此属性设置为从中生成礼品消息的样式表名称。
更新许可证
表明当许可证更改时应该对订户下载内容的许可证进行更新。此属性仅适用于指定每次下载时订户都需要付费的许可证。
subscriber.every_download.update_license
将此属性设置为 true 表明当记帐模型更改时应该根据新的记帐模型对订户进行收费。设置为 false 表明应根据原始记帐模型对订户进行收费。
双向推送消息传送
启用 Content Delivery Server 可以支持来自短消息服务中心 (SMSC) 的移动起始的 SMS 消息。还必须将消息传送服务配置为支持 SMS 推送(请参见第 4.1.1.2 节“配置 SMS 的消息传送服务”)。
如果更改这些属性的值,必须重新启动服务器。
  • mopush.accept.external.sms
将此属性设置为 true 可以接受来自任何 SMSC 的消息。将其设置为 false 仅可以接受从在 mopush.accept.moblieid 属性中指定的 SMSC 发送的消息。
  • mopush.accept.mobileid
如果 mopush.accept.external.sms 设置为 false,则将其设置为您希望从中接受消息的 SMSC 的电话号码。

4.4.4 设置 Catalog Manager 属性

表 12 介绍了可以在 $CDS_HOME/deployment/deployment-name/conf 目录的 AdminConsole.properties 文件中设置的属性。这些属性仅适用于 Catalog Manager 管理控制台。

表 12-AdminConsole.properties 文件中的属性
特性
说明
属性
每页的项目数
使用 Vending Manager 管理控制台时每页显示的最大项目数。
admin.pagination.display.max
将此属性设置为希望每页显示的项目数。缺省值为 20。
页面阈值
列表导航栏在页面的底端重复之前在此页面上必须显示的项目数。如果项目数少于指定的数目,列表导航栏将仅显示在页面顶端。
admin.pagination.display.threshold
将此属性设置为在页面的结尾位置显示列表导航栏之前在此页面上必须显示的项目数。缺省值为 15。

4.4.5 设置 Vending Manager 属性

表 13 介绍了可以在 $CDS_HOME/deployment/deployment-name/conf 目录的 VSAdminConsole.properties 文件中设置的属性。这些属性仅适用于 Vending Manager 管理控制台。

表 13-VSAdminConsole.properties 文件中的属性
特性
说明
属性
每页的项目数
使用 Vending Manager 管理控制台时每页显示的最大项目数。
admin.pagination.display.max
将此属性设置为希望每页显示的项目数。缺省值为 20。
页面阈值
列表导航栏在页面的底端重复之前在此页面上必须显示的项目数。如果项目数少于指定的数目,列表导航栏将仅显示在页面顶端。
admin.pagination.display.threshold
将此属性设置为在页面的结尾位置显示列表导航栏之前在此页面上必须显示的项目数。缺省值为 15。

4.5 为防火墙配置 Content Delivery Server

如果 Content Delivery Server 在防火墙后面运行,则还需要对配置进行其他更改。

  1. 如果希望强制所有绝对 URL 生成操作都使用特定的主机和端口,请设置下列属性:
    表 14-主机和端口属性
    属性
    alternate.dns.host
    Web 服务器的已发布的外部 IP 地址。
    alternate.dns.port
    Web 服务器的已发布的外部端口号。
    alternate.dns.scheme
    所使用的方案,httphttps。如果未指定值,将从传入的 HTTP 请求中确定方案。缺省情况下,不指定任何值。

  2. 这四个文件位于
    $CDS_HOME/deployment/deployment-name/conf 目录中。

  3. 将初始 Vending Manager 帐户的网络 ID 设置为运行 Web 服务器的主机的内部 IP 地址。使用 Catalog Manager 管理控制台可以更新 Vending Manager 帐户。有关详细信息,请参见《Sun Java System Content Delivery Server 管理员指南》。

提示-要验证 Catalog Manager 是否可以访问 Vending Manager,请在运行 Catalog Manager 的主机上启动浏览器。将浏览器指向 http://vending_manager_ip。如果无法显示页面,则必须更正为 Vending Manager 帐户(与要访问的 Vending Manager 相关联)所指定的域名。


4.6 配置价格模型

价格模型用于确定如何针对订户下载内容收费。Content Delivery Server 支持下列价格模型:

Download 价格模型始终可用。可以配置使用其他模型以满足您的需要。可以将系统设置为只包括 download 价格模型,或者设置为支持与其他价格模型的任意组合一同使用 download 价格模型。

要配置价格模型,请设置 $CDS_HOME/deployment/deployment-name/conf/CommonConsole.xml 文件中的 cds.billing.models 属性。有效值为:

要同时指定 usage 和 time,请用逗号分隔值。例如:

cds.billing.models=usage,subscription 

如果将系统设置为提交 Java 应用程序时对该应用程序进行程序校验,则必须确保将系统配置成仅支持您的程序校验所支持的价格模型。有关详细信息,请参见第 4.7.1 节“Java 应用程序的工作流”

4.7 配置提交检验器工作流

提交检验器工作流指定提交内容时 Content Delivery Server 要采取的操作。执行的工作流由您指定的标准确定。不要求特殊处理的内容必须由缺省的工作流处理。

随 Content Delivery Server 在 $CDS_HOME/deployment/deployment-name/conf/SubmissionVerifierWorkflows.xml 文件中提供了下列内容类型的工作流:

如果不希望执行工作流中提供的操作(如 API 过滤),可以注释该操作的步骤。如果希望为缺省标准指定的内容以外的内容执行工作流,则可以更改标准,如第 4.7.7 节“指定工作流标准”中所述。如果希望将步骤添加到工作流或者要新建工作流,请参见《Sun Java System Content Delivery Server 集成指南》。


注-SubmissionVerifierWorkflows.xml 文件必须保存为 UTF-8。请确保使用的编辑器支持该格式。

4.7.1 Java 应用程序的工作流

Content Delivery Server 支持使用 MIDP 1.0 库或 MIDP 2.0 库的 Java 应用程序。为使用 MIDP 1.0 的 Java 应用程序所提供的工作流将执行内容的 API 过滤、程序校验和存储。使用 MIDP 2.0 库的应用程序的工作流还将签署 MIDlet。对于每个工作流,还会提供不对 MIDlet 进行程序校验的替换版本。

可通过注释相关步骤来禁用操作。例如,如果不希望执行 API 过滤,请注释工作流的第 2 步。

不要注释名为 AddingDerivedEdition 的最后一步。此步骤将存储订户要下载的内容版本,此步骤为必需。

4.7.1.1 设置数字权限管理程序校验

数字权限管理 (DRM) 是 Content Delivery Server 的重要组成部分。Java 应用程序的工作流执行的程序校验将添加代码(称为 DRM 代理),该代码将在允许应用程序运行前验证订户的许可证。注意,如果进行程序校验的应用程序版本不符合连接受限设备配置 (CLDC) 的技术兼容性工具包 (TCK),则程序校验可能失败或者应用程序可能不工作。

下表介绍了随 Content Delivery Server 提供的 DRM 代理。“大小”列表明添加到应用程序的 DRM 代理的平均大小。

表 15-DRM 代理
标题
说明
大小(平均)
Disconnected Time Sensitive
支持 download 价格模型和基于时间(定期订阅和每个时间段)的价格模型。运行程序校验的内容时,不必联系 Content Delivery Server 即可验证许可证。许可证到期时,订户必须返回到 Subscriber Portal 以购买另外一个时间段才能再次下载应用程序。
3.0 KB
Disconnected Use Sensitive
支持 download 价格模型和基于使用(试用和每次使用)的价格模型。运行程序校验的内容时,不必联系 Content Delivery Server 即可验证许可证。许可证到期时,订户必须返回到 Subscriber Portal 以购买更多的使用权限才能再次下载应用程序。
4.4 KB
Small Connected Use and Time Sensitive
支持所有价格模型。运行程序校验的内容时,将联系 Content Delivery Server 以验证许可证。许可证到期时,订户可以更新许可证,不必再次下载应用程序。
注意: 为了防止运行时错误,该 DRM 代理不应该与执行下列操作的应用程序一起使用:
  • 调用 startApp 方法前显示警报。
  • 列出其记录存储。
  • 修改或删除 Content Delivery Server 记录存储。
5.1 KB
Midsize Connected Use and Time Sensitive
支持所有价格模型。运行程序校验的内容时,将联系 Content Delivery Server 以验证许可证。许可证到期时,订户可以更新许可证,不必再次下载应用程序。
注意: 为了防止运行时错误,该 DRM 代理不应该与执行下列操作的应用程序一起使用:
  • 调用 startApp 方法前显示警报。
  • 修改或删除 Content Delivery Server 记录存储。
5.8 KB
Standard Connected Use and Time Sensitive
支持所有价格模型。运行程序校验的内容时,将联系 Content Delivery Server 以验证许可证。许可证到期时,订户可以更新许可证,不必再次下载应用程序。
6.9 KB
仅支持 download 价格模型。不添加任何代码。
0 KB

设置程序校验

所有 DRM 代理都受提供的工作流支持。使用的 DRM 代理将由传递给工作流的变量确定。这些变量将在用于确定执行哪个工作流的标准列表中设置。下表介绍了这些变量。

表 16-工作流变量
名称
说明
allowsetcurrent2params
一个标记,表明在调用 startApp 方法前显示警报的应用程序是否应该由 Content Delivery Server 接受。将该标记设置为 true 将接受这些应用程序。设置为 false 将拒绝这些应用程序。
注意: 使用 Small Connected Use and Time 代理或 Midsize Connected Use and Time 代理时,将此标记设置为 false 将避免接受代理所不支持的应用程序。
allowlistrecordstores
一个标记,表明列出记录存储的应用程序是否应该由 Content Delivery Server 接受。将此标记设置为 true 将接受这些应用程序。设置为 false 将拒绝这些应用程序。
注意: 使用 Small Connected Use and Time 代理时,将此标记设置为 false 可避免接受代理所不支持的应用程序。
drmjarfile
包含 DRM 代理的 Java 归档 (JAR) 文件的全限定路径和名称。
drmclass
DRM 代理的全限定类名。
drmsharedjarfile
包含 DRM 代理所要求的共享类的 JAR 文件的全限定路径和名称。
drmredirectionjarfile
包含 DRM 代理所要求的重定向类的 JAR 文件的全限定路径和名称。
注意: 对于 Small Connected Use and Time Sensitive 代理,该值应该为空。
editionnamesuffix
附加到用于标识版本的内容版的名称的后缀。后缀不能多于 64 个单字节字符。

将变量设置为下列值:

删除程序校验

如果不希望对 MIDlet 进行程序校验,请使用已提供的可选 MIDP 1.0 和 MIDP 2.0 工作流。通过将 MIDlet 的标准更改成指向不同的工作流来指定可选工作流的使用。


注-如果不进行任何程序校验,则只能支持 download 价格模型。确保将系统配置成仅提供该模型。请参见第 4.6 节“配置价格模型”

4.7.1.2 设置受信证书

MIDP 2.0 应用程序的工作流要求其中含有安装所需的私钥和受信证书的密钥存储文件。使用随 JDK 提供的 keytool 公用程序来创建该文件。必须为 keyalg 参数指定 RSA。有关信息,请参见 JDK 文档。

编辑 SubmissionVerifierWorkflows.xml 文件中的 MIDP 2.0 Java 应用程序工作流,并提供密钥存储文件的全限定路径和文件名作为工作流第 5 步中的 MIDletSigning.KeyStoreFilePath 的值。

4.7.2 iAppli 应用程序的工作流

Content Delivery Server 支持使用 DoJa 库的 iAppli 应用程序。iAppli 应用程序的缺省工作流执行 API 过滤并将内容存储为原始形式。

可通过注释相关步骤来禁用操作。不要注释名为 AddingDerivedEdition 的最后一步。此步骤将存储订户要下载的内容版本,此步骤为必需。

4.7.3 外部托管受版权保护内容的工作流

外部托管的受版权保护的内容的工作流将标识由于版权限制不应该被 Content Delivery Server 缓存的内容。

本工作流中的两个步骤都是必需的。名为 AddingDerivedEdition 的第一步将在目录中为内容创建一个条目。名为 PreventingCopies 的第二步将确保只为内容存储元数据,内容本身不存储。

如果希望 Content Delivery Server 接受这种类型的内容,请从名为 "Copyrighted External Content Workflow" 的工作流中和从定义内容(将为此内容执行工作流)的标准中删除开始和结束注释语句。

只能将静态内容标记为受版权保护。要指定将为其执行该工作流的内容,请按第 4.7.7 节“指定工作流标准”中所述来设置标准。

4.7.4 DRM 消息中打包的静态内容的工作流

Content Delivery Server 可以接受符合 Open Mobile Alliance (OMA) Digital Rights Management 1.0 Enabler Release 定义的在 DRM 消息中打包的静态内容。在 DRM 消息中打包的静态内容的工作流将分析软件包以验证内容。

如果希望 Content Delivery Server 接受这种类型的内容,请从名为 "OMA DRM Message Parser" 的工作流中和从定义内容(将为此内容执行工作流)的标准中删除开始和结束注释语句。确保该标准定义了您希望由此工作流处理的内容。有关设置标准的信息,请参见第 4.7.7 节“指定工作流标准”

除了设置工作流和标准外,还必须确保 Content Delivery Server 中定义了 MIME 类型 application/vnd.oma.drm.message 和扩展名 .dm。有关将 MIME 类型和扩展名添加到系统的信息,请参见《Sun Java System Content Delivery Server 管理员指南》。

4.7.5 要在 DRM 消息中打包的静态内容的工作流

Content Delivery Server 可以使用 OMA Digital Rights Management 1.0 Enabler Release 中定义的转发锁方法来对 DRM 消息中已提交的静态内容进行打包。用于对静态内容进行打包的工作流将创建 DRM 消息并存储订户将下载的内容版本。

如果希望 Content Delivery Server 将静态内容打包在 DRM 消息中,请从名为 "OMA DRM Message wrapper" 的工作流中和从定义内容(将为此内容执行工作流)的标准中删除开始和结束注释语句。确保该标准定义了您希望由此工作流处理的内容。有关设置标准的信息,请参见第 4.7.7 节“指定工作流标准”

除了设置工作流和标准外,还必须确保 Content Delivery Server 中定义了 MIME 类型 application/vnd.oma.drm.message 和扩展名 .dm。有关将 MIME 类型和扩展名添加到系统的信息,请参见《Sun Java System Content Delivery Server 管理员指南》。

4.7.6 缺省工作流

对于所有与任何其他工作流的标准不匹配的内容都执行缺省的工作流。缺省的工作流将内容存储为原始形式。

不要注释名为 AddingDerivedEdition 的步骤。此步骤将存储订户要下载的内容版本,此步骤为必需。

4.7.7 指定工作流标准

每个工作流都应该至少有一组标准以标识应该为其执行工作流的内容。此标准将通过 $CDS_HOME/deployment/deployment-name/conf/SubmissionVerifierWorkflows.xml 文件中的工作流进行定义。

一项内容只执行一个工作流。执行的工作流将由内容匹配的第一组标准确定,因此标准的顺序很重要。如果一组标准中指定了多个标准,则对于要视为匹配的内容而言,所有标准都必须满足。

代码示例 2 显示了外部托管的受版权保护的内容工作流的样例标准。

代码示例 2 受版权保护的外部内容工作流的标准列表
<criteria id="4" name="isCopyrighted"> 
  <desc> 
    A sample validation workflow for copyrighted external content. 
    Note:criterion names and values are case insensitive. 
    Note:for location-type, specify e for external 
    and i for internal. 
  </desc> 
  <workflow-list> 
    <workflow id="4"/> 
  </workflow-list> 
  <criterion name="location-type" value="e"/> 
  <criterion name="content-type" value="ringtone"/> 
  <criterion name="mime-type" value="audio/mp3"/> 
  <criterion name="developer-plan" value="copyrightplan"/> 
  <criterion name="developer" value="composer"/> 
</criteria> 

编辑现有标注集的标准或者创建其他的标注集以标识希望由工作流处理的内容。对于每一组新的标准:

将下列特性的任意组合用作一组标准的标准。如果内容与指定的所有项目匹配,则执行工作流。

4.8 对 Subscriber Portal 进行本地化

Subscriber Portal 对订户显示的语言是为订户使用的浏览器设置的语言。如果 Content Delivery Server 不支持该语言,则 Subscriber Portal 将以所指定的缺省语言进行显示。可以按照需要设置缺省语言,定制字符串和图像,以及设置使用的货币符号。

通过 Catalog Manager 管理控制台定义订户可用的语言。有关添加语言环境的信息,请参见《Sun Java System Content Delivery Server 管理员指南》。

4.8.1 设置缺省语言

缺省情况下,Subscriber Portal 显示为英语。要更改缺省语言,请将 vending.config 文件中的 subscriber.default.locale 属性设置为正确的语言代码。此文件位于 $CDS_HOME/deployment/deployment-name/conf 目录中。例如:

subscriber.default.locale=fr 

设置缺省语言后,必须重新启动服务器。

4.8.2 提供已本地化的字符串

Subscriber Portal 上使用的文本字符串是在 $CDS_HOME/deployment/deployment-name/localization 目录下的 SubscriberPortalLocaleResource.properties 文件和 FulfillmentLocaleResource.properties 文件中定义的。注意,无论指定了何种语言环境,管理员输入的元素(如类别名和价格)都将按输入时的样子显示。

如果需要更改显示的字符串或者需要定制语言:

  1. 编辑现有文件,或者将相应的资源文件复制到新文件。如果要创建其他语言的文件,请将相应的语言代码附加到文件名中。例如:SubscriberPortalLocaleResource_fr_CA.properties
  2. 翻译等号 (=) 右侧的文本字符串。确保不要更改等号左侧的任何字符串,并且不要删除现有字符串。

更改将在保存文件后生效。

4.8.3 提供已本地化的模板和图像

对于基于 PC 的版本,除了更改 Subscriber Portal 的文本外,还可以提供语言特定的页面模板和图像。

对于需要支持的每种语言环境,在 $CDS_HOME/deployment/deployment-name/localization 目录中都应有与之相应的 SubscriberPortalLocaleResource.propertiesFulfillmentLocaleResource.properties 文件的语言特定版本。例如,要支持法语,则应具有名为 SubscriberPortalLocaleResource_fr.propertiesFulfillmentLocaleResource_fr.properties 的文件。

在每个语言特定的 SubscriberPortalLocaleResource.properties 文件中设置下列属性。

表 17-本地化属性
属性名
说明
desktop.path.templateUrl
模板文件 _tpl_main.jsp 的位置。此位置应为 /tpl 目录下的子目录。例如:
desktop.path.templateUrl=/tpl/_tpl_main.jsp
localized.path.image_url
已本地化的图像的位置。此位置应为 /static/media 目录下的子目录。例如:
localized.path.image_url=/static/media/fr

Subscriber Portal 的源文件位于以下目录:

$CDS_HOME/deployment/deployment-name/weblogic/domains/server-domain/applications/subscriberportal

deployment-name 是部署 Vending Manager 时指定的名称。server-domain 是在 app.server.domain 属性的部署配置文件中指定的域名。server-name 是在 app.server.name 属性的部署配置文件中指定的服务器名。

为在 SubscriberPortalLocaleResource.properties 文件中指定的模板和图像创建子目录。例如,要支持英语和法语,则可以创建以下目录结构:

../CDSSubscriberPortal_1 
  /tpl 
    /english 
    /french 
  /static 
    /media 
      /en 
      /fr 

每个模板子目录都应该包含模板文件 _tpl_main.jsp 的本地化副本。

每个图像子目录都应该包含 Subscriber Portal 所引用的所有本地化图像的副本。与语言无关的图像应保留在 /static/media 根目录中。包含 Subscriber Portal 中按钮图像的文件在《Sun Java System Content Delivery Server 署名指南》中进行了介绍。

在模板文件中,对于根图像目录中的图像,请使用图像路径变量 <%=img_url%>。对于语言特定的子目录中的图像,请使用图像路径变量 <%=localized_image_url%>。有关编辑这些文件的其他信息,请参见《Sun Java System Content Delivery Server 署名指南》。

4.8.4 设置货币符号

Content Delivery Server 系统中所使用的货币都在 $CDS_HOME/deployment/deployment-name/conf 目录的 CDS.properties 文件中进行了定义。只能指定一种货币,而且该货币可以用于所有组件。

要设置货币符号,需设置 CDS.properties 文件中的下列属性。

表 18-货币属性
属性
说明
i18n.currency.locale
要使用的货币的语言环境代码。例如,对于加拿大法语,则为 fr_CA。
i18n.currency.symbol
货币符号所使用的字符。例如,美元用 $。
i18n.currency.code
用于货币的代码。例如,美元使用 USD。
i18n.currency.position
与单位相关的符号的位置。有效值为 beforeafter


注-改变货币设置不会改变系统中已有的数额。如果设置是美元时输入的价格为 $1.50,则当设置更改成英镑时价格将是 1.50。

4.9 配置定制的市场活动

Content Delivery Server 提供了可以将广告发送到选定订户的功能。消息可以通过 SMS、WAP、MMS 或 SMTP(电子邮件)发送。消息中可以包括指向促销项目的链接。

4.9.1 配置邮件服务

以电子邮件形式发送的活动使用为消息传送服务定义的 SMTP 邮件服务。根据您在部署配置文件为消息传送服务设置的属性部署消息传送服务时,将对邮件服务进行初始配置。

如果需要更改所使用的邮件服务,请修改 $CDS_HOME/deployment/deployment-name/conf/MsgService.properties 文件中的下列属性:

更改这些属性后,必须重新启动消息传送服务。

4.9.2 设置 Subscriber Portal URL

可以在发送给订户的消息中包含指向促销项目的链接。链接指向的地址基于为部署配置文件中的 sp.external.uri 属性指定的值。

如果配置文件中的值不正确,请编辑 $CDS_HOME/deployment/deployment_name/conf 目录中的 CDS.properties 文件,并将 default.external.subscriberportal.uri 属性的值设置为正确的地址。如果 Content Delivery Server 在防火墙后面运行,请指定订户可以从防火墙外部访问的地址。

4.10 配置订户帐户管理

订户帐户包含标识用于访问 Content Delivery Server 的订户和设备的信息。订户帐户由 Vending Manager 管理员通过 Vending Manager 管理控制台进行管理。订户还可以通过 Subscriber Portal 访问自己的帐户。

可以配置为订户和管理员显示的选项。例如,可以让订户只查看自己的帐户,或者不允许管理员删除帐户。还可以配置订户或管理员可以编辑的字段。例如,可以不允许订户更改其移动电话号码,或者不允许管理员更改订户名。

要指定可以使用的选项和可以编辑的字段,请编辑 $CDS_HOME/deployment/deployment-name/conf 目录中的下列文件:

管理订户帐户的选项是添加、编辑和删除。这些选项在上述文件中由 <add><edit><delete> 标记表示。要使选项可用,请将 isEnabled 属性设置为 true。要隐藏选项,请将 isEnabled 属性设置为 false。缺省值为 true。例如,要防止订户创建帐户,请在 subsubmgr.xml 文件中包括以下语句:

<add isEnabled=”false?> 

订户帐户中的每个字段都由文件中 <edit> 标记下的某个标记表示。要防止字段被更改,请将 isReadOnly 参数设置为 true。要使字段可以被更改,请将 isReadOnly 参数设置为 false。缺省值为 false


注-不要更改任何标记上的 isRequired 参数的设置。

以下代码显示了 subsubmgr.xml 样例文件的相关部分。

<subscriber> 
   <subscriber> 
      <!-- For adding --> 
      <add isEnabled="false"/> 
      <!-- For editing --> 
      <edit isEnabled="true"> 
         <password isRequired="true"/> 
         <mobile_id isRequired="true" isReadOnly="true"/> 
 
         <first_name isRequired="true"/> 
         <middle_name/> 
         <last_name isRequired="true"/> 
         <salutation/> 
         <gender/> 
 
         <street_1/> 
         <street_2/> 
         <city/> 
         <state/> 
         <postal_code/> 
         <country_code/> 
 
         <email isRequired="true"/> 
         <contact_phone/> 
      </edit> 
   </subscriber> 
</subscriber> 

以下代码显示了 vsadminsubmgr.xml 样例文件的相关部分。

<vsadmin> 
   <subscriber> 
      <!-- For adding --> 
      <add isEnabled="true"/> 
      <!-- For editing --> 
      <edit isEnabled="true"> 
         <password isRequired="true"/> 
         <status isRequired="true"/> 
         <mobile_id isRequired="true"/> 
 
         <first_name isRequired="true"/> 
         <middle_name/> 
         <last_name isRequired="true"/> 
         <salutation/> 
         <gender/> 
 
         <street_1/> 
         <street_2/> 
         <city/> 
         <state/> 
         <postal_code/> 
         <country_code/> 
 
         <email isRequired="true"/> 
         <contact_phone/> 
      </edit> 
      <!-- For deleting --> 
      <delete isEnabled="true"/> 
   </subscriber> 
</vsadmin> 

4.11 配置对外部托管的内容的支持

如果选择支持外部托管的内容,则必须设置事件服务可以用于访问 Developer Portal 的 URL。如果未正确设置此属性,则无法获取对外部托管内容的更新。

要设置 Developer Portal URL:

  1. 编辑 $CDS_HOME/deployment/deployment-name/conf 目录中的 CDS.properties 文件。
  2. default.internal.developerportal.uri 属性的值设置为 Developer Portal 的内部地址。缺省值为 http://localhost/developer

4.12 配置对定制报告的支持

除了由 Vending Manager 生成的报告外,还可以对 Content Delivery Server 进行配置以便将事务数据存储在数据库表中。然后可以使用此数据创建自己的报告。

要配置对定制报告的支持:

  1. 编辑 $CDS_HOME/deployment/deployment-name/conf 目录中的 PostpaidService.properties 文件。将 postpaid.handler.class 属性设置为报告处理程序的名称。例如:
  2. postpaid.handler.class=com.sun.content.server.postpaid.impl.ReportingHandler 
    

    此文件中可以包含多个 postpaid.handler.class 属性。

  3. 编辑 $CDS_HOME/deployment/deployment-name/conf 目录中的 ReportService.properties 文件。设置下列属性:

注-启动 Content Delivery Server 以获取存储在报告数据库中的事务时,必须启动后付费服务。

有关为每个事务存储的数据的信息,请参见附录 D“报告”

4.13 设置对 iAppli 应用程序的支持

要支持 iAppli 应用程序,数据库需要有一条 DoJa 库条目,而且需要将该库提交到 Content Delivery Server。

4.13.1 将 DoJa 库添加到数据库

缺省情况下,在创建 Catalog Manager 模式时将向其中添加 DoJa 库的条目,除非在创建 Catalog Manager 模式时从 $CDS_HOME/dist/cds/database/cs 目录中删除了 iappli.sql 文件。如果创建 Catalog Manager 模式时包括了 iAppli 支持,则只需提交 DoJa 库,如第 4.13.2 节“提交 DoJa 库”中所述。

如果创建 Catalog Manager 模式时未包括 iAppli 支持,请在部署 Catalog Manager 的主机上执行下列步骤。

  1. $CDS_HOME/dist/cds/database/cs 目录中移除扩展名为 .sql 的所有文件。
  2. 将这些文件保存在其他位置。

  3. iappli.sql 文件复制到 $CDS_HOME/dist/cds/database/cs 目录。
  4. 运行以下命令:
  5. cdsi db data 

要验证数据库中是否存在条目,请登录到 Catalog Manager 管理控制台并显示设备库列表。应该能够看到 DoJa 1.0 库的条目。

4.13.2 提交 DoJa 库

如果要支持 iAppli 应用程序,需要在完成安装后将 DoJa 库提交到 Content Delivery Server。

可以通过 Catalog Manager 管理控制台来提交库。有关启动 Catalog Manager 的信息,请参见第 5.1.1 节“启动 Content Delivery Server 管理器”

要提交 DoJa 库:

  1. 通过键入以下地址从浏览器窗口中启动 Catalog Manager 管理控制台:
  2. http://host:port/admin/main 
    

    此时会显示 Catalog Manager 登录页面。

  3. 输入您的管理员名称和密码。
  4. 单击“登录”。
  5. 将显示 Catalog Manager 主页。

  6. 单击主菜单栏中的“设备”。
  7. 将显示“设备管理”页。

  8. 单击“库”选项卡。
  9. 将显示“设备库”页。

    “设备库”页, 设备库列表

  10. 单击 "DOJA-1.0"。
  11. 显示“库定义”页。

    “库定义”页, 显示库属性

  12. 单击“上载 Jar”。
  13. 将显示库的属性。

    “新库定义”页,第 1 页,共 2 页

  14. 在“选择 JAR 文件”中输入库文件的路径,或者单击“浏览”查找库文件。
  15. 不要更改库的名称。

  16. 单击“下一步”。
  17. 将显示库中包含的可用项目。

    “新库定义”页,第 2 页,共 2 页

  18. 选中“全局软件包”复选框。
  19. 单击“确定”。
  20. 库将添加到数据库中。然后即可使用开发者计划中的库来限制开发者使用的 API。

  21. 单击“确定”,关闭确认页。

注-重新安装数据库时必须重新提交库。

4.14 设置发送给开发者的通知

开发者可以通过 Developer Portal 将内容提交到 Content Delivery Server。可以将 Content Delivery Server 设置为只要对开发者提交的内容进行操作时就向其发送电子邮件通知。

要设置通知:

  1. 确保 $CDS_HOME/deployment/deployment-name/conf/CDS.properties 文件中的 default.external.developerportal.uri 属性指向 Developer Portal 所在的位置。
  2. 此值的格式应为 http://hostname:port/developer/,其中 hostname:port 是运行 Developer Portal 的主机的名称和端口号。

  3. 设置 $CDS_HOME/deployment/deployment-name/conf/EventService.properties 文件中的下列属性。
    表 19-开发者通知的属性
    属性
    说明
    eventservice.developer.email.enabled
    电子邮件通知的状态。将此属性设置为 true 可以在对内容进行操作时自动发送通知。设置为 false 可以禁用发送通知。缺省值为 false
    eventservice.developer.email.from
    从中发送通知的地址。
    eventservice.developer.email.admin
    当开发者对通知有疑问时可以将响应发送到的地址。
    eventservice.developer.email.template.propertychanged
    XSL 文件(其中包含在更改任何内容属性时发送的通知说明)的全限定位置。
    eventservice.developer.email.template.submitted
    XSL 文件(其中包含当 Content Delivery Server 接收或拒绝内容时发送的通知说明)的全限定位置。
    eventservice.developer.email.template.statuschanged
    XSL 文件(其中包含在更改内容状态时发送的通知说明)的全限定位置。

  4. 如果需要定制要发送的通知,请编辑随 Content Delivery Server 提供的缺省模板,或者创建自己的 XSL 文件。
  5. 代码示例 3 提供了应遵循的通知模板的定义。如果创建自己的文件,则必须更新上一步骤中说明的标识文件位置的属性。

    代码示例 3 通知模板的定义
    /* 
     * Defintion of XML documents that are piped to the 
     * XSL transformation sheets. 
     * 
     * <dn> 
     *  <developer>Pawel S. Veselov</developer> 
     * 
     *  <submission> <!-- when content was submitted (even if failed) --> 
     *    <succeeded> <!-- may be zero or more --> 
     *      <name>Name used to submit</name> 
     *      <id>ID used to submit</id> 
     *      <url>URL this content is viewable at</url> 
     *    </succeeded> 
     *    <failed> <!-- may be zero or more --> 
     *      <name>Name used to submit</name> 
     *      <id>ID used to submit</id> 
     *      <errormsg>Error message</errormsg> 
     *      <errorlog>Lengthy error info</errorlog> 
     *    </failed> 
     *  <submission> 
     * 
     *  <statuschanged> 
     * 
     *    <!-- The possible status values are : 
     * 
     *    pending 
     *    denied 
     *    published 
     *    deleted 
     *    new 
     * 
     *    --> 
     * 
     *    <newstatus>status</newstatus> 
     * 
     *    <name>Named used to submit</name> 
     *    <id>content id</id> 
     *    <url>URL where this content is accessible</url> 
     *    <message>Message left for developer</message> 
     *  </statuschanged>> 
     * 
     *  <propertychanged> 
     *    <name>Named used to submit</name> 
     *    <id>content id</id> 
     *    <url>URL where this content is accessible</url> 
     *    <textproperty> <!-- zero or more of those --> 
     *      <name>property name</name> 
     *      <oldvalue>old property value</oldvalue> 
     *      <newvalue>new property value</newvalue> 
     *    </textproperty> 
     * 
     *    <!-- binary property is special, since it doesn't have a 
     *         displayable value, so only name is mentioned. 
     *    --> 
     *    <binaryproperty>property name</binaryproperty> <!-- zero or 
     *           more --> 
     *    <priceproperty> <!-- zero or one of this, only for suggested 
     *           price --> 
     *      <!-- note the pricedata tag.It is used to unify the 
     *           structure to make XSLT transformation easier. 
     *      --> 
     *      <oldvalue><pricedata> 
     *        <billing1> 
     *          <!-- the following is $13.27, but helps localization 
     *               if broken in such a way.There is also a "number" 
     *               tag which gives the price in cents (coins) 
     *           --> 
     *          <price> 
     *            <number>1327</number> 
     *            <bills>13</bills> 
     *            <coins>27</coins> 
     *          </price> 
     *          <usage_count>usage_count</usage_count> 
     *         <usage_period_days>usage_period_days</usage_period_days> 
     *          <recurring>recurring</recurring> 
     *        </billing1> 
     *        <billing2> 
     *          <price><bills>13</bills><coins>27</coins></price> 
     *          <frequency>frequency</frequency> 
     *          <recurring>recurring</recurring> 
     *        </billing2> 
     *        <billing3> 
     *          <price><bills>13</bills><coins>27</coins></price> 
     *          <usage_count>usage_count</usage_count> 
     *        </billing3> 
     *      </pricedata></oldvalue> 
     *      <newvalue><!-- the same as for olvalue --> </newvalue> 
     *    </priceproperty> 
     * 
     *  </propertychanged> 
     * 
     *  <adminemail>Email address developer can inquire at</adminemail> 
     * </dn> 
     */ 
    

4.15 设置订户通知的缺省选项

Content Delivery Server 会将关于更新或促销的通知发送给订户。订户在设置帐户首选项时,可以通过设置选项来选择是否接收这些通知。可以将缺省值设置为 opt-in 或 opt-out。初始缺省值为 opt-in。

要更改缺省的选项,需要设置 $CDS_HOME/deployment/deployment-name/conf/security.config 文件中的 user.profile.optin 属性。将该属性设置为 true 表示将缺省值设置为 opt-in。将该属性设置为 false 表示将缺省值设置为 opt-out。

 


目录 上一页 下一页 索引 安装指南
Sun Java™ System Content Delivery Server,版本 2004Q1