Skip to content

Latest commit

 

History

History
495 lines (403 loc) · 18.9 KB

README.md

File metadata and controls

495 lines (403 loc) · 18.9 KB

qieshu 识别内容后台管理系统 sdk

简介;

此 SDK 适用于 Java 8版本。使用此 SDK 构建您自己识别内容后台管理系统能让您以非常便捷地方式管理您的箧书识别设备及识别内容。

Java SDK 属于箧书SDK之一,主要有如下功能:

  1. 提供识别组操作管理,识别组授权
  2. 提供识别 app 管理;
  3. 提供专业超声波设备管理;
  4. 提供设备内容识别设备管理;
  5. 提供第三方设备动态音频获取;

安装

        <dependency>
            <groupId>net.qieshu</groupId>
            <artifactId>qieshu-sdk</artifactId>
            <version>2.0</version>
        </dependency>

注册调用app信息,获取识别 (ak,sk) 用于获取识别token

        String secretId     = "secret id" ;
        String secretKey    = "secret key" ;
        String appName      = "声连码小程序" ;
        String comment      = "声连码小程序用途描述";
        String bundleID     = "com.qieshu.IOS.packageName" ; //ios 包名String 
        // packageName  = "com.qieshu.IOS.packageName" ; //ios 包名
          String wxAppID      = "" ; //wxs1d3f1s3df13sdf 微信小程序 WXID , 如果是 WXID , 其它两个包名不需要填写
	  
	  BFOpenAPI  authManager = createBFOpenAPInstance( secretId ,secretKey ) ;
          try {
                BFApp app  = authManager.createApp( appName ,comment ,bundleID ,packageName ,  wxAppID) ;  
       	  } catch (BFException e) {
               System.err.println(  e );
          } catch (ParseException e) {
            System.err.println(  e );
          }		

获取app注册列表

	  String secretId     = "secret id" ;
	  String secretKey    = "secret key" ;
          int    pageNum      = 1 ;
          int    limit        = 200 ; 	
	  BFOpenAPI  authManager = createBFOpenAPInstance( secretId ,secretKey ) ;
          try {
            BFPage<? extends BFApp> appList = authManager.getAppList( pageNum , limit ) ; //带分页功能
          } catch (ParseException e) {
            e.printStackTrace();
            System.err.println(  e ) ;
          } catch (IOException e) {
            e.printStackTrace() ;
         }

删除 app (删除 app 会清空该 app 下面所有识别组里面识别内容)

     String secretId     = "secret id" ;
     String secretKey    = "secret key" ;
     String appKey       = "your appKey" ;
     BFOpenAPI  authManager = createBFOpenAPInstance( secretId ,secretKey ) ;
     try {
            BFApp    bfApp = authManager.getApp( appKey) ;
            boolean deleteStatus = authManager.removeApp(bfApp) ;
     } catch (ParseException e) {
            e.printStackTrace() ;
     } catch (BFException e) {
            System.out.println(  e.getErrMsg() ) ;
     }

获取app详情

	String secretId     = "secret id" ;
	String secretKey    = "secret key ;
        String appKey       = "your appKey" ;
        BFOpenAPI  authManager = createBFOpenAPInstance( secretId ,secretKey ) ;
	try {
            BFApp    bfApp  =   authManager.getApp( appKey) ;
            System.out.println( "this is uuid          = "   + bfApp.uuid() ) ;
            System.out.println( "this is appName       = "   + bfApp.getAppName() ) ; 
            System.out.println( "this is appKey        = "   + bfApp.getAppKey() ) ;
            System.out.println( "this is secKey        = "   + bfApp.getSecKey() ) ;
            System.out.println( "this is WXAppID       = "   + bfApp.getWXAppID() ) ;
            System.out.println( "this is iOSBundleID   = "   + bfApp.getiOSBundleID() ) ;
            System.out.println( "this is PackageName   = "   + bfApp.getAndroidPackageName() ) 
            System.out.println( "this is comment       = "   + bfApp.getAppDescrption() ) ;
            System.out.println( "this is LastUpTime    = "   + bfApp.getLastUpdateTime() ) ;
        } catch (ParseException e) {
            System.out.println(  e ) ;
        } catch (BFException e) {
            e.printStackTrace() ;
            System.out.println( e.getErrMsg() ) ;
        }	 

更新 app密钥

        String secretId     = "secret id" ;
	String secretKey    = "secret key" ;
        String appKey       = "your appKey" ;
        BFOpenAPI  authManager = createBFOpenAPInstance( secretId ,secretKey ) ;
	try {
            BFApp    bfApp        = authManager.getApp( appKey) ;
            boolean  updateStatus = bfApp.generateSecKey() ;
            System.out.println(  updateStatus ) ;
        } catch (ParseException e) {
            e.printStackTrace() ;
        } catch (BFException e) {
            System.out.println(  e.getErrMsg() ) ;
        }

app 添加识别组内安装位置设置识别内容

    
        String secretId     = "secret id" ;
	String secretKey    = "secret key" ;
        String appKey       = "your appKey" ;
        String group_uuid   = "your group key" ;
        String itemName     = "";//模糊匹配
        int    pageNum      = 1 ;
        int    limit        = 200 ;
	
        BFOpenAPI  authManager = createBFOpenAPInstance( secretId ,secretKey ) ;
	try {
            BFApp    bfApp        = authManager.getApp( appKey) ;
            BFGroup  bfGroup      = authManager.getGroup(group_uuid) ;
            BFPage<? extends BFItem> itemPage = bfGroup.getItemList( itemName , pageNum , limit ) ;
            List<? extends BFItem>   itemList = itemPage.getResultList() ;
            List<String>             tags     =  null ;
            HashMap<BFItem, List<String>> resultTags = new HashMap<>() ;
            for (BFItem bfItem : itemList) {
                tags = new ArrayList<>() ;
                tags.add("hello") ;
		tags.add("word") ;
                resultTags.put(  bfItem , tags  ); //总 tag字符长度不能超过4094
            }
            boolean setStatus = bfApp.setRecgonizeResults( bfGroup ,  resultTags    ) ;
        } catch (ParseException e) {
            e.printStackTrace();
        } catch (BFException e) {
            System.out.println(  e.getErrMsg() );
        }           

获取 app 下某个识别组中安装位置里面的识别内容

        String secretId     = "secret id" ;
        String secretKey    = "secret key" ;
        String appKey       = "your appKey" ;
        String group_uuid   = "your group key" ;
        String itemName     = "";//模糊匹配
        int    pageNum      = 1 ;
        int    limit        = 200 ;
	
	BFOpenAPI  authManager = createBFOpenAPInstance( secretId ,secretKey ) ;
	try {
      
	BFApp    bfApp   = authManager.getApp( appKey) ;
        BFGroup  bfGroup = authManager.getGroup(group_uuid) ;
        HashMap<BFItem, List<String>> resultTags = bfApp.getRecgonizeResults( bfGroup  ) ;

        } catch (ParseException e) {
            e.printStackTrace();
        } catch (BFException e) {
            System.out.println(  e.getErrMsg() );
        }

获取app被第三方授权识别组列表

        String secretId     = "secret id" ;
 	String secretKey    = "secret key" ;
        String groupName    = "" ;
	String backup       = "" ;
	String pageNum      = 1 ;
	String limit        = 200 ;
	
	BFOpenAPI  authManager = createBFOpenAPInstance( secretId ,secretKey ) ;      
	BFApp      bfApp       = authManager.getApp( appKey) ;
	BFPage<? extends BFGroup> pageAuthGroup =  bfApp.getAuthorizedgroupList(pageNum,limit,                       groupName,backup) ;
	
	
	

创建识别组 group

      String     secretId     = "secret id" ;
      String     secretKey    = "secret key" ;
	  BFOpenAPI  authManager  = createBFOpenAPInstance( secretId ,secretKey ) ;
	 //创建识别组描述参数
	  String groupName = "中兴路店" ;
          String address   = "中兴路373号" ;
          String province  = "上海市" ;
          String city      = "静安区" ;
          String brand     = "百蝠" ; 
	  try {
              BFGroup group = authManager.createGroup( groupName , address , province , city , brand ) ;
	  } catch (BFException e) {
            e.printStackTrace();
          } catch (ParseException e) {
            e.printStackTrace();
          }

获取识别组列表

          String secretId     = "secret id" ;
          String secretKey    = "secret key" ;
          int pageNum = 1 ;
          int limit   = 200 ;
          String groupName = "" ; //根据场景名称搜索
          String backup    = "" ; //根据品牌,地区搜索

	  BFOpenAPI  authManager = createBFOpenAPInstance( secretId ,secretKey) ;
        try {
            BFPage<? extends BFGroup> groupPage = authManager.findGroupsByKeyword( groupName , backup, 		    pageNum , limit ) ;
        } catch (BFException e) {
            e.getErrMsg() ;
        } catch (ParseException e) {
            e.printStackTrace();
        }

获取识别组对象

          String secretId     = "secret id" ;
          String secretKey    = "secret key" ;
          String group_uuid   = "your group key" ;
	  
	  BFOpenAPI  authManager = createBFOpenAPInstance( secretId ,secretKey ) ;
          BFGroup  bfGroup       = authManager.getGroup( group_uuid  ) ; 
	  System.out.println(  "this is groupName = " +  bfGroup.getGroupName() ) ;
          System.out.println(  "this is province ,city ,address ,brand obj   = " +  bfGroup.getBackup() ) ;
          System.out.println(  "this is boundcode = " +  bfGroup.getBoundCode() ) ; //场景安装码
          System.out.println(  "this is uuid = " +  bfGroup.uuid() ) ;

修改识别组

      String     secretId     = "secret id" ; 
      String     secretKey    = "secret key" ;
      String     group_uuid   = "your group key" ;
	  BFOpenAPI  authManager  = createBFOpenAPInstance( secretId ,secretKey ) ;
	 //创建识别组描述参数
	  String groupName = "中兴路店" ;
          String address   = "中兴路373号" ;
          String province  = "上海市" ;
          String city      = "静安区" ;
          String brand     = "百蝠" ; 
	  try {
	      BFGroup  bfGroup       = authManager.getGroup( group_uuid  ) ;
	      boolean updateStatus   = bfGroup.update(  groupName , address , province , city , brand  ) ;
	  } catch (BFException e) {
            e.printStackTrace();
          } catch (ParseException e) {
            e.printStackTrace();
          }

识别组添加静态业务安装位置

      String secretId     = "secret id" ;
      String secretKey    = "secret key" ;
      String group_uuid   = "your group key" ;
      String itemDescrption  = "A001" ;
      String deviceSN        = "2018062613427338" ; //可以为空,部署时候绑定设备
	  BFOpenAPI  authManager = createBFOpenAPInstance( secretId ,secretKey ) ;
	  BFGroup  bfGroup       = authManager.getGroup( group_uuid  ) ;
	  BFItem item            = bfGroup.createItem( itemDescrption , deviceSN  ) ;
        

识别组动态业务创建安装位置 (获取箧书动态音频文件下载地址)

		  String secretId       = "secret id" ;
		  String secretKey      = "secret key" ;
		  String group_uuid     = "your group key" ;
		  String yourDeviceSN   = "M1123456789" ;
		  String yourDeviceType = "MBM-M1" ;
		  
	          BFOpenAPI  authManager = createBFOpenAPInstance( secretId ,secretKey ) ;
	          BFGroup    bfGroup     = authManager.getGroup( group_uuid  ) ;		
		  BFApp      app         = authManager.getApp( appKey ) ;
		  String downloadUrl     = bfGroup.loginDynamicDevice( app ,yourDeviceSN  ,
		  yourDeviceType  ,CodeType.A ) ;
		  System.out.println(  downloadUrl ) ;

动态音频下载广告回调通知

		  String secretId       = "secret id" ;
		  String secretKey      = "secret key" ;
		  String adId           = "your  ad id" ;
		  String yourDeviceSN   = "M1123456789" ;
		  String yourDeviceType = "MBM-M1" ;
		  BFOpenAPI authManager = createBFOpenAPInstance( secretId ,secretKey ) ;
          boolean    pushStatus = authManager.pushDynamicAd( yourDeviceType, yourDeviceSN , adId );	         		

获取识别组下面静态安装位置列表

          String secretId     = "secret id" ;
          String secretKey    = "secret key" ;
          String group_uuid   = "your group key" ;
          int    pageNum      = 1 ;
          int    limit        = 200 ;
		  BFOpenAPI  authManager = createBFOpenAPInstance( secretId ,secretKey ) ;
                  BFGroup    bfGroup     = authManager.getGroup( group_uuid  ) ;	
		  BFPage<? extends BFItem> staticItemList = bfGroup.getItemList( itemName,pageNum ,limit ) ;

获取识别组下面动态安装位置列表

          String secretId     = "secret id" ;
          String secretKey    = "secret key" ;
          String group_uuid   = "your group key" ;
          int    pageNum      = 1 ;
          int    limit        = 200 ;
		  BFOpenAPI  authManager = createBFOpenAPInstance( secretId ,secretKey ) ;
                  BFGroup    bfGroup     = authManager.getGroup( group_uuid  ) ;
		  BFPage<? extends BFDynamicDevice> dynamicList = bfGroup.getDynamicList(itemName ,pageNum , 		       limit ) ;
		  
		  

移除识别组下面静态安装位置 如果有绑定设备,设置了识别内容都会被清空

          String secretId     = "secret id" ;
          String secretKey    = "secret key" ;
          String group_uuid   = "your group key" ;
         	  
          BFOpenAPI  authManager = createBFOpenAPInstance( secretId ,secretKey ) ;
          BFGroup    bfGroup     = authManager.getGroup( group_uuid  ) ;
          BFPage<? extends BFItem> staticItemList = bfGroup.getItemList( itemName,pageNum ,limit ) ;
          BFItem item                             = staticItemList.getResultList().get(0) ;	
          boolean deleteStatus                    = bfGroup.removeItem( item  ) ;

批量移除识别组静态业务下面安装位置

          String secretId     = "secret id" ;
          String secretKey    = "secret key" ;
          String group_uuid   = "your group key" ;
          int    pageNum      = 1 ;
          int    limit        = 200 ;
		  BFOpenAPI  authManager = createBFOpenAPInstance( secretId ,secretKey ) ;
          BFGroup    bfGroup     = authManager.getGroup( group_uuid  ) ;
		  BFPage<? extends BFItem> staticItemList = bfGroup.getItemList( itemName,pageNum ,limit ) ;
		  List<BFItem> bfItemList = (List<BFItem>) staticItemList.getResultList() ;
		  List<BFItem> removeList = new ArrayList<>() ;
			           removeList.add(bfItemList.get(0) ) ;
			           removeList.add(bfItemList.get(1) ) ;
		  boolean deleteStatus    =  bfGroup.removeItems( removeList  ) ; 

批量移除识别组动态安装位置

          String secretId     = "secret id" ;
          String secretKey    = "secret key" ;
          String group_uuid   = "your group key" ;
          int pageNum         = 1 ;
          int limit           = 200 ;
         	  
		  BFOpenAPI  authManager = createBFOpenAPInstance( secretId ,secretKey ) ;
		  BFGroup    bfGroup     = authManager.getGroup( group_uuid  ) ;
		  BFPage<? extends BFDynamicDevice> dynamicList = bfGroup.getDynamicList(itemName ,pageNum , 		       limit ) ;
		  List<BFDynamicDevice> bfItemList = (List<BFDynamicDevice>) dynamicList.getResultList() ;
		  List<BFDynamicDevice> removeList = new ArrayList<>() ;
		                        removeList.add( bfItemList.get(0) ) ;
		                        removeList.add( bfItemList.get(1) ) ;
		  boolean deleteStatus  =  bfGroup.removeItems( removeList  ) ; 

第三方被授权appKey列表

          String secretId     = "secret id" ;
          String secretKey    = "secret key" ;
          String group_uuid   = "your group key" ;
          int    pageNum      = 1 ;
          int    limit        = 200 ;
		  BFOpenAPI  authManager    = createBFOpenAPInstance( secretId ,secretKey ) ;
		  BFGroup    bfGroup        = authManager.getGroup( group_uuid  ) ;
		  BFPage<String> authAppKey = bfGroup.getAuthorizedAppKeys(pageNum , limit ) ;											      

将识别组授权给第三方app

            String secretId     = "secret id" ;
            String secretKey    = "secret key" ;
            String group_uuid   = "your group key" ;
            String appKey       = "other appKey" ;
            String backupName   = "back up the APP" ; 
            Date   startDate    = new Date( System.currentTimeMillis() ) ; 
            Date   endDate      = new Date( System.currentTimeMillis() ) ; 	
         	
		    BFOpenAPI  authManager    = createBFOpenAPInstance( secretId ,secretKey ) ;
		    BFGroup    bfGroup        = authManager.getGroup( group_uuid  ) ;
		    boolean    createStatus   = bfGroup.addAuthorizedApp(appKey,backupName,startDate,endDate) ; 
		   										      

将识别组取消授权第三方app

            String secretId     = "secret id" ;
            String secretKey    = "secret key" ;
            String group_uuid   = "your group key" ;
            String appKey       = "other appKey"BFOpenAPI  authManager    = createBFOpenAPInstance( secretId ,secretKey ) ;
            BFGroup    bfGroup        = authManager.getGroup( group_uuid  ) ;
            boolean    deleteStauts   = bfGroup.removeAuthorizedApp(appKey); 
		   										      

获取安装位置详情

            String secretId     = "secret id" ;
            String secretKey    = "secret key" ;
            String item_uuid    = "your item key" ;
         	  
		  BFOpenAPI  authManager = createBFOpenAPInstance( secretId ,secretKey ) ;
		  BFItem     bfItem      =    authManager.getBFItem(  item_uuid ) ;
		  System.out.println(  " 识别组 groupId  "        + bfItem.getGroupId() ) ;
                  System.out.println(  " 识别组对象 groupObj "     + bfItem.getGroup() ) ;
                  System.out.println(  " 识别组安装位置名称 "       + bfItem.getItemDescrption() ) ;
                  System.out.println(  " 安装位置上面绑定设备 "     + bfItem.getDeviceSN() ) ;
                  System.out.println(  " 安装位置安装序号码 "       + bfItem.getBoundSubCode() ) ; 

解除安装位置静态设备绑定

            String secretId     = "secret id" ;
            String secretKey    = "secret key" ;
            String item_uuid    = "your item key" ;
         	  
		  BFOpenAPI  authManager   = createBFOpenAPInstance( secretId ,secretKey ) ;
		  BFItem     bfItem        = authManager.getBFItem(  item_uuid ) ;
		  boolean    updateStatus  = bfItem.unbindDeviceSN() ;
		  

安装位置绑定静态设备

            String secretId     = "secret id" ;
            String secretKey    = "secret key" ;
            String item_uuid    = "your item key" ;
            String deviceSN     = "2018062613427338" ;	
         	  
		  BFOpenAPI  authManager   = createBFOpenAPInstance( secretId ,secretKey ) ;
		  BFItem     bfItem        = authManager.getBFItem(  item_uuid ) ;
		  boolean    updateStatus  = bfItem.bindDeviceSN( deviceSN ) ;