mirror of
https://github.com/ZaidElkurdi/AssistantPlus-Developer-Guide.git
synced 2025-01-22 11:18:30 +00:00
Version 1.2.0
New features: - Get user's response after Siri speaks (example plugin included) - assistantDismissed (called when Siri is dismissed)
This commit is contained in:
parent
c484827ed3
commit
add32d37d9
@ -1,8 +1,8 @@
|
||||
//
|
||||
// AssistantPlusHeaders.h
|
||||
// For use with Assistant+ v1.0
|
||||
// For use with Assistant+ v1.2
|
||||
//
|
||||
// Created by Zaid Elkurdi on 2/28/15.
|
||||
// Created by Zaid Elkurdi on 7/12/15.
|
||||
//
|
||||
//
|
||||
|
||||
@ -19,6 +19,16 @@
|
||||
dialogPhase: Possible values are Completion, Reflection, Summary, Error, Clarification, and Acknowledgement */
|
||||
- (void)sendTextSnippet:(NSString*)text temporary:(BOOL)temporary scrollToTop:(BOOL)toTop dialogPhase:(NSString*)phase;
|
||||
|
||||
/* Send a simple text snippet that Siri will read and optionally get the user's response
|
||||
|
||||
temporary: If true then the snippet will be replaced by the next view sent to the session.
|
||||
For this to function properly the dialogPhase should be "Reflection"
|
||||
scrollToTop: If true the Siri UI will be scrolled down so that the new view is at the top.
|
||||
dialogPhase: Possible values are Completion, Reflection, Summary, Error, Clarification, and Acknowledgement
|
||||
listenAfterSpeaking: If true Siri will prompt the user for a resposne after speaking the text.
|
||||
Available as of version 1.2 */
|
||||
- (void)sendTextSnippet:(NSString*)text temporary:(BOOL)temporary scrollToTop:(BOOL)toTop dialogPhase:(NSString*)phase listenAfterSpeaking:(BOOL)listen;
|
||||
|
||||
/* Create an editable dictionary representing a text snippet. In order to send this
|
||||
to the user you must add it to an NSArray and use sendAddviews: */
|
||||
-(NSMutableDictionary*)createTextSnippet:(NSString*)text;
|
||||
@ -84,6 +94,16 @@
|
||||
all installed plugins or until one returns YES. If you've determined that your plugin should handle
|
||||
the user's query then do any time-intensive tasks (such as network calls) on another thread */
|
||||
-(BOOL)handleSpeech:(NSString*)text withTokens:(NSSet*)tokens withSession:(id<APSiriSession>)session;
|
||||
|
||||
@optional
|
||||
/* If you send a text snippet and tell Siri to listen for a reply the user's response will be sent
|
||||
with this method. You must implement this method in order to receive the user's response. Available
|
||||
as of version 1.2 */
|
||||
-(void)handleReply:(NSString*)text withTokens:(NSSet*)tokens withSession:(id<APSiriSession>)session;
|
||||
/* Called when the Siri window is dismissed and the session is ended. Use this to reset your plugin
|
||||
if necessary. Available as of version 1.2 */
|
||||
-(void)assistantWasDismissed;
|
||||
|
||||
@end
|
||||
|
||||
|
||||
|
253
inquisitiveSiri/inquisitiveSiri.xcodeproj/project.pbxproj
Normal file
253
inquisitiveSiri/inquisitiveSiri.xcodeproj/project.pbxproj
Normal file
@ -0,0 +1,253 @@
|
||||
// !$*UTF8*$!
|
||||
{
|
||||
archiveVersion = 1;
|
||||
classes = {
|
||||
};
|
||||
objectVersion = 46;
|
||||
objects = {
|
||||
|
||||
/* Begin PBXBuildFile section */
|
||||
B86E66CE1ACA1E6F007C6014 /* InquisitiveSiriCommands.m in Sources */ = {isa = PBXBuildFile; fileRef = B86E66CD1ACA1E6F007C6014 /* InquisitiveSiriCommands.m */; };
|
||||
B8EC47031AC768A100ED3836 /* inquisitiveSiri.m in Sources */ = {isa = PBXBuildFile; fileRef = B8EC47021AC768A100ED3836 /* inquisitiveSiri.m */; };
|
||||
B8EC472C1AC779D700ED3836 /* Makefile in Sources */ = {isa = PBXBuildFile; fileRef = B8EC472B1AC779D700ED3836 /* Makefile */; };
|
||||
/* End PBXBuildFile section */
|
||||
|
||||
/* Begin PBXCopyFilesBuildPhase section */
|
||||
B86E66D71ACB560F007C6014 /* CopyFiles */ = {
|
||||
isa = PBXCopyFilesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
dstPath = "";
|
||||
dstSubfolderSpec = 7;
|
||||
files = (
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXCopyFilesBuildPhase section */
|
||||
|
||||
/* Begin PBXFileReference section */
|
||||
B86E66CC1ACA1E6F007C6014 /* InquisitiveSiriCommands.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InquisitiveSiriCommands.h; sourceTree = "<group>"; };
|
||||
B86E66CD1ACA1E6F007C6014 /* InquisitiveSiriCommands.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = InquisitiveSiriCommands.m; sourceTree = "<group>"; };
|
||||
B8EC46E61AC7670700ED3836 /* libinquisitiveSiri.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = libinquisitiveSiri.a; path = "/Users/Zaid/Programming/AssistantPlus/inquisitiveSiri/build/Debug-iphoneos/libinquisitiveSiri.a"; sourceTree = "<absolute>"; };
|
||||
B8EC47001AC7689100ED3836 /* AssistantPlusHeaders.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AssistantPlusHeaders.h; sourceTree = "<group>"; };
|
||||
B8EC47011AC768A100ED3836 /* inquisitiveSiri.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = inquisitiveSiri.h; sourceTree = "<group>"; };
|
||||
B8EC47021AC768A100ED3836 /* inquisitiveSiri.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = inquisitiveSiri.m; sourceTree = "<group>"; };
|
||||
B8EC472B1AC779D700ED3836 /* Makefile */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.make; path = Makefile; sourceTree = "<group>"; };
|
||||
B8EC472F1AC77DE400ED3836 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = Resources/Info.plist; sourceTree = "<group>"; };
|
||||
/* End PBXFileReference section */
|
||||
|
||||
/* Begin PBXFrameworksBuildPhase section */
|
||||
B8EC46E31AC7670700ED3836 /* Frameworks */ = {
|
||||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXFrameworksBuildPhase section */
|
||||
|
||||
/* Begin PBXGroup section */
|
||||
B8EC46DD1AC7670700ED3836 = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
B8EC46E81AC7670700ED3836 /* inquisitiveSiri */,
|
||||
);
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
B8EC46E81AC7670700ED3836 /* inquisitiveSiri */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
B8EC472F1AC77DE400ED3836 /* Info.plist */,
|
||||
B8EC47001AC7689100ED3836 /* AssistantPlusHeaders.h */,
|
||||
B8EC47011AC768A100ED3836 /* inquisitiveSiri.h */,
|
||||
B8EC47021AC768A100ED3836 /* inquisitiveSiri.m */,
|
||||
B86E66CC1ACA1E6F007C6014 /* InquisitiveSiriCommands.h */,
|
||||
B86E66CD1ACA1E6F007C6014 /* InquisitiveSiriCommands.m */,
|
||||
B8EC472B1AC779D700ED3836 /* Makefile */,
|
||||
);
|
||||
path = inquisitiveSiri;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
/* End PBXGroup section */
|
||||
|
||||
/* Begin PBXNativeTarget section */
|
||||
B8EC46E51AC7670700ED3836 /* inquisitiveSiri */ = {
|
||||
isa = PBXNativeTarget;
|
||||
buildConfigurationList = B8EC46FA1AC7670700ED3836 /* Build configuration list for PBXNativeTarget "inquisitiveSiri" */;
|
||||
buildPhases = (
|
||||
B8EC46E21AC7670700ED3836 /* Sources */,
|
||||
B8EC46E31AC7670700ED3836 /* Frameworks */,
|
||||
B86E66D71ACB560F007C6014 /* CopyFiles */,
|
||||
);
|
||||
buildRules = (
|
||||
);
|
||||
dependencies = (
|
||||
);
|
||||
name = inquisitiveSiri;
|
||||
productName = spotifyPlugin;
|
||||
productReference = B8EC46E61AC7670700ED3836 /* libinquisitiveSiri.a */;
|
||||
productType = "com.apple.product-type.library.static";
|
||||
};
|
||||
/* End PBXNativeTarget section */
|
||||
|
||||
/* Begin PBXProject section */
|
||||
B8EC46DE1AC7670700ED3836 /* Project object */ = {
|
||||
isa = PBXProject;
|
||||
attributes = {
|
||||
LastUpgradeCheck = 0620;
|
||||
ORGANIZATIONNAME = "Zaid Elkurdi";
|
||||
TargetAttributes = {
|
||||
B8EC46E51AC7670700ED3836 = {
|
||||
CreatedOnToolsVersion = 6.2;
|
||||
};
|
||||
};
|
||||
};
|
||||
buildConfigurationList = B8EC46E11AC7670700ED3836 /* Build configuration list for PBXProject "inquisitiveSiri" */;
|
||||
compatibilityVersion = "Xcode 3.2";
|
||||
developmentRegion = English;
|
||||
hasScannedForEncodings = 0;
|
||||
knownRegions = (
|
||||
en,
|
||||
);
|
||||
mainGroup = B8EC46DD1AC7670700ED3836;
|
||||
productRefGroup = B8EC46DD1AC7670700ED3836;
|
||||
projectDirPath = "";
|
||||
projectRoot = "";
|
||||
targets = (
|
||||
B8EC46E51AC7670700ED3836 /* inquisitiveSiri */,
|
||||
);
|
||||
};
|
||||
/* End PBXProject section */
|
||||
|
||||
/* Begin PBXSourcesBuildPhase section */
|
||||
B8EC46E21AC7670700ED3836 /* Sources */ = {
|
||||
isa = PBXSourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
B8EC47031AC768A100ED3836 /* inquisitiveSiri.m in Sources */,
|
||||
B8EC472C1AC779D700ED3836 /* Makefile in Sources */,
|
||||
B86E66CE1ACA1E6F007C6014 /* InquisitiveSiriCommands.m in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXSourcesBuildPhase section */
|
||||
|
||||
/* Begin XCBuildConfiguration section */
|
||||
B8EC46F81AC7670700ED3836 /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
|
||||
CLANG_CXX_LIBRARY = "libc++";
|
||||
CLANG_ENABLE_MODULES = YES;
|
||||
CLANG_ENABLE_OBJC_ARC = YES;
|
||||
CLANG_WARN_BOOL_CONVERSION = YES;
|
||||
CLANG_WARN_CONSTANT_CONVERSION = YES;
|
||||
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
|
||||
CLANG_WARN_EMPTY_BODY = YES;
|
||||
CLANG_WARN_ENUM_CONVERSION = YES;
|
||||
CLANG_WARN_INT_CONVERSION = YES;
|
||||
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
|
||||
CLANG_WARN_UNREACHABLE_CODE = YES;
|
||||
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
||||
COPY_PHASE_STRIP = NO;
|
||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||
GCC_C_LANGUAGE_STANDARD = gnu99;
|
||||
GCC_DYNAMIC_NO_PIC = NO;
|
||||
GCC_OPTIMIZATION_LEVEL = 0;
|
||||
GCC_PREPROCESSOR_DEFINITIONS = (
|
||||
"DEBUG=1",
|
||||
"$(inherited)",
|
||||
);
|
||||
GCC_SYMBOLS_PRIVATE_EXTERN = NO;
|
||||
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
|
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
|
||||
GCC_WARN_UNDECLARED_SELECTOR = YES;
|
||||
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 8.2;
|
||||
MTL_ENABLE_DEBUG_INFO = YES;
|
||||
ONLY_ACTIVE_ARCH = YES;
|
||||
SDKROOT = iphoneos;
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
B8EC46F91AC7670700ED3836 /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
|
||||
CLANG_CXX_LIBRARY = "libc++";
|
||||
CLANG_ENABLE_MODULES = YES;
|
||||
CLANG_ENABLE_OBJC_ARC = YES;
|
||||
CLANG_WARN_BOOL_CONVERSION = YES;
|
||||
CLANG_WARN_CONSTANT_CONVERSION = YES;
|
||||
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
|
||||
CLANG_WARN_EMPTY_BODY = YES;
|
||||
CLANG_WARN_ENUM_CONVERSION = YES;
|
||||
CLANG_WARN_INT_CONVERSION = YES;
|
||||
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
|
||||
CLANG_WARN_UNREACHABLE_CODE = YES;
|
||||
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
||||
COPY_PHASE_STRIP = NO;
|
||||
ENABLE_NS_ASSERTIONS = NO;
|
||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||
GCC_C_LANGUAGE_STANDARD = gnu99;
|
||||
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
|
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
|
||||
GCC_WARN_UNDECLARED_SELECTOR = YES;
|
||||
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 8.2;
|
||||
MTL_ENABLE_DEBUG_INFO = NO;
|
||||
SDKROOT = iphoneos;
|
||||
VALIDATE_PRODUCT = YES;
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
B8EC46FB1AC7670700ED3836 /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
CODE_SIGN_IDENTITY = "iPhone Developer: Zaid Elkurdi (4W5YEE5275)";
|
||||
OTHER_LDFLAGS = "-ObjC";
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SKIP_INSTALL = YES;
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
B8EC46FC1AC7670700ED3836 /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
CODE_SIGN_IDENTITY = "iPhone Developer: Zaid Elkurdi (4W5YEE5275)";
|
||||
OTHER_LDFLAGS = "-ObjC";
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SKIP_INSTALL = YES;
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
/* End XCBuildConfiguration section */
|
||||
|
||||
/* Begin XCConfigurationList section */
|
||||
B8EC46E11AC7670700ED3836 /* Build configuration list for PBXProject "inquisitiveSiri" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
B8EC46F81AC7670700ED3836 /* Debug */,
|
||||
B8EC46F91AC7670700ED3836 /* Release */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Release;
|
||||
};
|
||||
B8EC46FA1AC7670700ED3836 /* Build configuration list for PBXNativeTarget "inquisitiveSiri" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
B8EC46FB1AC7670700ED3836 /* Debug */,
|
||||
B8EC46FC1AC7670700ED3836 /* Release */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Release;
|
||||
};
|
||||
/* End XCConfigurationList section */
|
||||
};
|
||||
rootObject = B8EC46DE1AC7670700ED3836 /* Project object */;
|
||||
}
|
7
inquisitiveSiri/inquisitiveSiri.xcodeproj/project.xcworkspace/contents.xcworkspacedata
generated
Normal file
7
inquisitiveSiri/inquisitiveSiri.xcodeproj/project.xcworkspace/contents.xcworkspacedata
generated
Normal file
@ -0,0 +1,7 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Workspace
|
||||
version = "1.0">
|
||||
<FileRef
|
||||
location = "self:spotifyPlugin.xcodeproj">
|
||||
</FileRef>
|
||||
</Workspace>
|
@ -0,0 +1,41 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>IDESourceControlProjectFavoriteDictionaryKey</key>
|
||||
<false/>
|
||||
<key>IDESourceControlProjectIdentifier</key>
|
||||
<string>55EA12C3-373C-4723-888E-2F017FAD2772</string>
|
||||
<key>IDESourceControlProjectName</key>
|
||||
<string>inquisitiveSiri</string>
|
||||
<key>IDESourceControlProjectOriginsDictionary</key>
|
||||
<dict>
|
||||
<key>ECF8262764CCDC8E7C3DE4F3497F357D49271248</key>
|
||||
<string>github.com:ZaidElkurdi/AssistantPlus.git</string>
|
||||
</dict>
|
||||
<key>IDESourceControlProjectPath</key>
|
||||
<string>inquisitiveSiri/inquisitiveSiri.xcodeproj</string>
|
||||
<key>IDESourceControlProjectRelativeInstallPathDictionary</key>
|
||||
<dict>
|
||||
<key>ECF8262764CCDC8E7C3DE4F3497F357D49271248</key>
|
||||
<string>../../..</string>
|
||||
</dict>
|
||||
<key>IDESourceControlProjectURL</key>
|
||||
<string>github.com:ZaidElkurdi/AssistantPlus.git</string>
|
||||
<key>IDESourceControlProjectVersion</key>
|
||||
<integer>111</integer>
|
||||
<key>IDESourceControlProjectWCCIdentifier</key>
|
||||
<string>ECF8262764CCDC8E7C3DE4F3497F357D49271248</string>
|
||||
<key>IDESourceControlProjectWCConfigurations</key>
|
||||
<array>
|
||||
<dict>
|
||||
<key>IDESourceControlRepositoryExtensionIdentifierKey</key>
|
||||
<string>public.vcs.git</string>
|
||||
<key>IDESourceControlWCCIdentifierKey</key>
|
||||
<string>ECF8262764CCDC8E7C3DE4F3497F357D49271248</string>
|
||||
<key>IDESourceControlWCCName</key>
|
||||
<string>AssistantPlus</string>
|
||||
</dict>
|
||||
</array>
|
||||
</dict>
|
||||
</plist>
|
@ -0,0 +1,41 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>IDESourceControlProjectFavoriteDictionaryKey</key>
|
||||
<false/>
|
||||
<key>IDESourceControlProjectIdentifier</key>
|
||||
<string>2C48AAC2-C4AD-4E57-BCFA-D2A247CAB23D</string>
|
||||
<key>IDESourceControlProjectName</key>
|
||||
<string>spotifyPlugin</string>
|
||||
<key>IDESourceControlProjectOriginsDictionary</key>
|
||||
<dict>
|
||||
<key>1DDFB15FDAC578A4447EF06D6A0EB8914E453AB8</key>
|
||||
<string>https://bitbucket.org/ZaidElkurdi/assistantplus.git</string>
|
||||
</dict>
|
||||
<key>IDESourceControlProjectPath</key>
|
||||
<string>spotifyPlugin/spotifyPlugin.xcodeproj</string>
|
||||
<key>IDESourceControlProjectRelativeInstallPathDictionary</key>
|
||||
<dict>
|
||||
<key>1DDFB15FDAC578A4447EF06D6A0EB8914E453AB8</key>
|
||||
<string>../../..</string>
|
||||
</dict>
|
||||
<key>IDESourceControlProjectURL</key>
|
||||
<string>https://bitbucket.org/ZaidElkurdi/assistantplus.git</string>
|
||||
<key>IDESourceControlProjectVersion</key>
|
||||
<integer>111</integer>
|
||||
<key>IDESourceControlProjectWCCIdentifier</key>
|
||||
<string>1DDFB15FDAC578A4447EF06D6A0EB8914E453AB8</string>
|
||||
<key>IDESourceControlProjectWCConfigurations</key>
|
||||
<array>
|
||||
<dict>
|
||||
<key>IDESourceControlRepositoryExtensionIdentifierKey</key>
|
||||
<string>public.vcs.git</string>
|
||||
<key>IDESourceControlWCCIdentifierKey</key>
|
||||
<string>1DDFB15FDAC578A4447EF06D6A0EB8914E453AB8</string>
|
||||
<key>IDESourceControlWCCName</key>
|
||||
<string>assistantplus</string>
|
||||
</dict>
|
||||
</array>
|
||||
</dict>
|
||||
</plist>
|
Binary file not shown.
@ -0,0 +1,10 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>HasAskedToTakeAutomaticSnapshotBeforeSignificantChanges</key>
|
||||
<true/>
|
||||
<key>SnapshotAutomaticallyBeforeSignificantChanges</key>
|
||||
<false/>
|
||||
</dict>
|
||||
</plist>
|
@ -0,0 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Bucket
|
||||
type = "1"
|
||||
version = "2.0">
|
||||
</Bucket>
|
@ -0,0 +1,110 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Scheme
|
||||
LastUpgradeVersion = "0620"
|
||||
version = "1.3">
|
||||
<BuildAction
|
||||
parallelizeBuildables = "YES"
|
||||
buildImplicitDependencies = "YES">
|
||||
<BuildActionEntries>
|
||||
<BuildActionEntry
|
||||
buildForTesting = "YES"
|
||||
buildForRunning = "YES"
|
||||
buildForProfiling = "YES"
|
||||
buildForArchiving = "YES"
|
||||
buildForAnalyzing = "YES">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "B8EC46E51AC7670700ED3836"
|
||||
BuildableName = "libspotifyPlugin.a"
|
||||
BlueprintName = "spotifyPlugin"
|
||||
ReferencedContainer = "container:spotifyPlugin.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildActionEntry>
|
||||
<BuildActionEntry
|
||||
buildForTesting = "YES"
|
||||
buildForRunning = "YES"
|
||||
buildForProfiling = "NO"
|
||||
buildForArchiving = "NO"
|
||||
buildForAnalyzing = "YES">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "B8EC46F01AC7670700ED3836"
|
||||
BuildableName = "spotifyPluginTests.xctest"
|
||||
BlueprintName = "spotifyPluginTests"
|
||||
ReferencedContainer = "container:spotifyPlugin.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildActionEntry>
|
||||
</BuildActionEntries>
|
||||
</BuildAction>
|
||||
<TestAction
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
shouldUseLaunchSchemeArgsEnv = "YES"
|
||||
buildConfiguration = "Debug">
|
||||
<Testables>
|
||||
<TestableReference
|
||||
skipped = "NO">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "B8EC46F01AC7670700ED3836"
|
||||
BuildableName = "spotifyPluginTests.xctest"
|
||||
BlueprintName = "spotifyPluginTests"
|
||||
ReferencedContainer = "container:spotifyPlugin.xcodeproj">
|
||||
</BuildableReference>
|
||||
</TestableReference>
|
||||
</Testables>
|
||||
<MacroExpansion>
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "B8EC46E51AC7670700ED3836"
|
||||
BuildableName = "libspotifyPlugin.a"
|
||||
BlueprintName = "spotifyPlugin"
|
||||
ReferencedContainer = "container:spotifyPlugin.xcodeproj">
|
||||
</BuildableReference>
|
||||
</MacroExpansion>
|
||||
</TestAction>
|
||||
<LaunchAction
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
launchStyle = "0"
|
||||
useCustomWorkingDirectory = "NO"
|
||||
buildConfiguration = "Debug"
|
||||
ignoresPersistentStateOnLaunch = "NO"
|
||||
debugDocumentVersioning = "YES"
|
||||
allowLocationSimulation = "YES">
|
||||
<MacroExpansion>
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "B8EC46E51AC7670700ED3836"
|
||||
BuildableName = "libspotifyPlugin.a"
|
||||
BlueprintName = "spotifyPlugin"
|
||||
ReferencedContainer = "container:spotifyPlugin.xcodeproj">
|
||||
</BuildableReference>
|
||||
</MacroExpansion>
|
||||
<AdditionalOptions>
|
||||
</AdditionalOptions>
|
||||
</LaunchAction>
|
||||
<ProfileAction
|
||||
shouldUseLaunchSchemeArgsEnv = "YES"
|
||||
savedToolIdentifier = ""
|
||||
useCustomWorkingDirectory = "NO"
|
||||
buildConfiguration = "Release"
|
||||
debugDocumentVersioning = "YES">
|
||||
<MacroExpansion>
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "B8EC46E51AC7670700ED3836"
|
||||
BuildableName = "libspotifyPlugin.a"
|
||||
BlueprintName = "spotifyPlugin"
|
||||
ReferencedContainer = "container:spotifyPlugin.xcodeproj">
|
||||
</BuildableReference>
|
||||
</MacroExpansion>
|
||||
</ProfileAction>
|
||||
<AnalyzeAction
|
||||
buildConfiguration = "Debug">
|
||||
</AnalyzeAction>
|
||||
<ArchiveAction
|
||||
buildConfiguration = "Release"
|
||||
revealArchiveInOrganizer = "YES">
|
||||
</ArchiveAction>
|
||||
</Scheme>
|
@ -0,0 +1,27 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>SchemeUserState</key>
|
||||
<dict>
|
||||
<key>spotifyPlugin.xcscheme</key>
|
||||
<dict>
|
||||
<key>orderHint</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
</dict>
|
||||
<key>SuppressBuildableAutocreation</key>
|
||||
<dict>
|
||||
<key>B8EC46E51AC7670700ED3836</key>
|
||||
<dict>
|
||||
<key>primary</key>
|
||||
<true/>
|
||||
</dict>
|
||||
<key>B8EC46F01AC7670700ED3836</key>
|
||||
<dict>
|
||||
<key>primary</key>
|
||||
<true/>
|
||||
</dict>
|
||||
</dict>
|
||||
</dict>
|
||||
</plist>
|
0
inquisitiveSiri/inquisitiveSiri/.theos/fakeroot
Normal file
0
inquisitiveSiri/inquisitiveSiri/.theos/fakeroot
Normal file
1
inquisitiveSiri/inquisitiveSiri/.theos/last_package
Normal file
1
inquisitiveSiri/inquisitiveSiri/.theos/last_package
Normal file
@ -0,0 +1 @@
|
||||
./com.assistantplus.inquisitiveSiri_1.0.0-9_iphoneos-arm.deb
|
@ -0,0 +1 @@
|
||||
9
|
@ -0,0 +1 @@
|
||||
2
|
119
inquisitiveSiri/inquisitiveSiri/AssistantPlusHeaders.h
Normal file
119
inquisitiveSiri/inquisitiveSiri/AssistantPlusHeaders.h
Normal file
@ -0,0 +1,119 @@
|
||||
//
|
||||
// AssistantPlusHeaders.h
|
||||
// For use with Assistant+ v1.2
|
||||
//
|
||||
// Created by Zaid Elkurdi on 7/12/15.
|
||||
//
|
||||
//
|
||||
|
||||
#ifndef _AssistantPlusHeaders_h
|
||||
#define _AssistantPlusHeaders_h
|
||||
|
||||
// Represents the current Siri session
|
||||
@protocol APSiriSession <NSObject>
|
||||
/* Send a simple text snippet that Siri will read.
|
||||
|
||||
temporary: If true then the snippet will be replaced by the next view sent to the session.
|
||||
For this to function properly the dialogPhase should be "Reflection"
|
||||
scrollToTop: If true the Siri UI will be scrolled down so that the new view is at the top.
|
||||
dialogPhase: Possible values are Completion, Reflection, Summary, Error, Clarification, and Acknowledgement */
|
||||
- (void)sendTextSnippet:(NSString*)text temporary:(BOOL)temporary scrollToTop:(BOOL)toTop dialogPhase:(NSString*)phase;
|
||||
|
||||
/* Send a simple text snippet that Siri will read and optionally get the user's response
|
||||
|
||||
temporary: If true then the snippet will be replaced by the next view sent to the session.
|
||||
For this to function properly the dialogPhase should be "Reflection"
|
||||
scrollToTop: If true the Siri UI will be scrolled down so that the new view is at the top.
|
||||
dialogPhase: Possible values are Completion, Reflection, Summary, Error, Clarification, and Acknowledgement
|
||||
listenAfterSpeaking: If true Siri will prompt the user for a resposne after speaking the text.
|
||||
Available as of version 1.2 */
|
||||
- (void)sendTextSnippet:(NSString*)text temporary:(BOOL)temporary scrollToTop:(BOOL)toTop dialogPhase:(NSString*)phase listenAfterSpeaking:(BOOL)listen;
|
||||
|
||||
/* Create an editable dictionary representing a text snippet. In order to send this
|
||||
to the user you must add it to an NSArray and use sendAddviews: */
|
||||
-(NSMutableDictionary*)createTextSnippet:(NSString*)text;
|
||||
|
||||
/* Send several views to the user at once */
|
||||
- (void)sendAddViews:(NSArray*)views;
|
||||
|
||||
/* Send several views to the user with control over the parameters */
|
||||
- (void)sendAddViews:(NSArray*)views dialogPhase:(NSString*)dialogPhase scrollToTop:(BOOL)toTop temporary:(BOOL)temporary;
|
||||
|
||||
/* Create and immediately send a custom snippet with the specified properties. The snippet must
|
||||
have been registered with the plugin manager */
|
||||
- (void)sendCustomSnippet:(NSString*)snippetClass withProperties:(NSDictionary*)props;
|
||||
|
||||
/* Create an editable dictionary representing a custom snippet. In order to send this
|
||||
to the user you must add it to an NSArray and use sendAddViews: */
|
||||
-(NSMutableDictionary*)createSnippet:(NSString*)snippetClass properties:(NSDictionary*)props;
|
||||
|
||||
/* Tell the session that you're done with this request and that it can end. You must do
|
||||
this or Siri will timeout and display an error message.*/
|
||||
- (void)sendRequestCompleted;
|
||||
|
||||
/* Retrieve the user's current location and then execute the code in the completion block
|
||||
with the location info. The location info will be structured as follows:
|
||||
|
||||
NSDictionary *dict = @{@"latitude" : NSNumber,
|
||||
@"longitude" : NSNumber,
|
||||
@"horizontalAccuracy" : NSNumber,
|
||||
@"verticalAccuracy" : NSNumber,
|
||||
@"speed" : NSNumber,
|
||||
@"course" : NSNumber,
|
||||
@"timestamp" : NSDate} */
|
||||
- (void)getCurrentLocationWithCompletion:(void (^)(NSDictionary *locationInfo))completion;
|
||||
|
||||
@end
|
||||
|
||||
/* None of your classes should need to conform to this protocol, but you will use it to register
|
||||
your command and snippet classes when your principal class's (the one that conforms to APPlugin)
|
||||
initWithSystem: method is called */
|
||||
@protocol APPluginManager <NSObject>
|
||||
@required
|
||||
-(BOOL)registerCommand:(Class)commandClass;
|
||||
-(BOOL)registerSnippet:(Class)snippetClass;
|
||||
@end
|
||||
|
||||
/* Your custom snippet class (which should always be a subclass of UIViewController)
|
||||
will need to conform to this protocol */
|
||||
@protocol APPluginSnippet <NSObject>
|
||||
@optional
|
||||
/* If you use APSiriSession's sendCustomSnippet:withProperties: and want to be able
|
||||
to access the properties in your snippet then you must implement this method. If you
|
||||
don't implement this method then the snippet will be created with [yourSnippet init] */
|
||||
-(id)initWithProperties:(NSDictionary*)props;
|
||||
|
||||
@end
|
||||
|
||||
/* This is where you will handle the user's query and determine if your plugin
|
||||
should handle it. This "command" class should essentially be the brain of your plugin
|
||||
and determine which snippet/s to show or action/s to take */
|
||||
@protocol APPluginCommand <NSObject>
|
||||
@required
|
||||
/* You should try to make this method run as quickly as possible, as this method will be called on
|
||||
all installed plugins or until one returns YES. If you've determined that your plugin should handle
|
||||
the user's query then do any time-intensive tasks (such as network calls) on another thread */
|
||||
-(BOOL)handleSpeech:(NSString*)text withTokens:(NSSet*)tokens withSession:(id<APSiriSession>)session;
|
||||
|
||||
@optional
|
||||
/* If you send a text snippet and tell Siri to listen for a reply the user's response will be sent
|
||||
with this method. You must implement this method in order to receive the user's response. Available
|
||||
as of version 1.2 */
|
||||
-(void)handleReply:(NSString*)text withTokens:(NSSet*)tokens withSession:(id<APSiriSession>)session;
|
||||
/* Called when the Siri window is dismissed and the session is ended. Use this to reset your plugin
|
||||
if necessary. Available as of version 1.2 */
|
||||
-(void)assistantWasDismissed;
|
||||
|
||||
@end
|
||||
|
||||
|
||||
/* Your principal/"main" class should conform to this protocol. */
|
||||
@protocol APPlugin <NSObject>
|
||||
@required
|
||||
/* When your plugin is initialized the plugin manager will call this method. This is
|
||||
when you should register you command/s and snippet/s using the system's registerCommand: and
|
||||
registerSnippet: methods, repsectively. */
|
||||
-(id)initWithPluginManager:(id<APPluginManager>)manager;
|
||||
@end
|
||||
|
||||
#endif
|
16
inquisitiveSiri/inquisitiveSiri/InquisitiveSiriCommands.h
Normal file
16
inquisitiveSiri/inquisitiveSiri/InquisitiveSiriCommands.h
Normal file
@ -0,0 +1,16 @@
|
||||
//
|
||||
// InquisitiveSiriCommands.h
|
||||
// inquisitiveSiri
|
||||
//
|
||||
// Created by Zaid Elkurdi on 7/12/15.
|
||||
// Copyright (c) 2015 Zaid Elkurdi. All rights reserved.
|
||||
//
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
#import "AssistantPlusHeaders.h"
|
||||
|
||||
@interface InquisitiveSiriCommands : NSObject <APPluginCommand>
|
||||
|
||||
- (BOOL)handleSpeech:(NSString *)text withTokens:(NSSet *)tokens withSession:(id<APSiriSession>)session;
|
||||
|
||||
@end
|
62
inquisitiveSiri/inquisitiveSiri/InquisitiveSiriCommands.m
Normal file
62
inquisitiveSiri/inquisitiveSiri/InquisitiveSiriCommands.m
Normal file
@ -0,0 +1,62 @@
|
||||
//
|
||||
// InquisitiveSiriCommands.m
|
||||
// inquisitiveSiri
|
||||
//
|
||||
// Created by Zaid Elkurdi on 7/12/15.
|
||||
// Copyright (c) 2015 Zaid Elkurdi. All rights reserved.
|
||||
//
|
||||
|
||||
#import "InquisitiveSiriCommands.h"
|
||||
|
||||
@interface InquisitiveSiriCommands ()
|
||||
@property (strong, nonatomic) NSMutableArray *possibleQuestions;
|
||||
@property (strong, nonatomic) NSMutableDictionary *userResponses;
|
||||
@end
|
||||
|
||||
@implementation InquisitiveSiriCommands
|
||||
|
||||
- (void)initialSetup {
|
||||
self.possibleQuestions = [NSMutableArray arrayWithObjects:@"color", @"car", @"country", @"animal", nil];
|
||||
self.userResponses = [NSMutableDictionary dictionary];
|
||||
}
|
||||
|
||||
- (BOOL)handleSpeech:(NSString *)text withTokens:(NSSet *)tokens withSession:(id<APSiriSession>)session {
|
||||
if ([text isEqualToString:@"let's get acquainted"]) {
|
||||
if (!self.possibleQuestions) {
|
||||
[self initialSetup];
|
||||
}
|
||||
NSString *firstQuestion = [NSString stringWithFormat:@"Okay, what's your favorite %@?", [self.possibleQuestions lastObject]];
|
||||
[session sendTextSnippet:firstQuestion temporary:NO scrollToTop:YES dialogPhase:@"Clarification" listenAfterSpeaking:YES];
|
||||
return YES;
|
||||
}
|
||||
return NO;
|
||||
}
|
||||
|
||||
-(void)handleReply:(NSString*)text withTokens:(NSSet*)tokens withSession:(id<APSiriSession>)session {
|
||||
if (!text) {
|
||||
NSString *errorMsg = [NSString stringWithFormat:@"Sorry, I didn't get that, try again."];
|
||||
[session sendTextSnippet:errorMsg temporary:NO scrollToTop:YES dialogPhase:@"Clarification" listenAfterSpeaking:YES];
|
||||
} else {
|
||||
[self.userResponses setObject:text forKey:[self.possibleQuestions lastObject]];
|
||||
[self.possibleQuestions removeLastObject];
|
||||
}
|
||||
|
||||
if (self.possibleQuestions.count == 0) {
|
||||
NSMutableString *finalResponse = [NSMutableString string];
|
||||
[self.userResponses enumerateKeysAndObjectsUsingBlock:^(NSString *key, NSString *value, BOOL* stop) {
|
||||
[finalResponse appendFormat:@"Your favorite %@ is %@, ", key, value];
|
||||
}];
|
||||
[session sendTextSnippet:finalResponse temporary:NO scrollToTop:YES dialogPhase:@"Completion"];
|
||||
[session sendRequestCompleted];
|
||||
} else {
|
||||
NSString *nextQuestion = [NSString stringWithFormat:@"Cool, what's your favorite %@?", [self.possibleQuestions lastObject]];
|
||||
[session sendTextSnippet:nextQuestion temporary:NO scrollToTop:YES dialogPhase:@"Clarification" listenAfterSpeaking:YES];
|
||||
}
|
||||
}
|
||||
|
||||
-(void)assistantWasDismissed {
|
||||
self.userResponses = nil;
|
||||
self.possibleQuestions = nil;
|
||||
}
|
||||
|
||||
@end
|
17
inquisitiveSiri/inquisitiveSiri/Makefile
Normal file
17
inquisitiveSiri/inquisitiveSiri/Makefile
Normal file
@ -0,0 +1,17 @@
|
||||
include theos/makefiles/common.mk
|
||||
|
||||
export ARCHS = armv7 arm64
|
||||
export TARGET = iphone:clang:latest:8.4
|
||||
export SDKVERSION=8.4
|
||||
|
||||
BUNDLE_NAME = inquisitiveSiri
|
||||
inquisitiveSiri_BUNDLE_EXTENSION = assistantPlugin
|
||||
inquisitiveSiri_FILES = $(wildcard *.m)
|
||||
inquisitiveSiri_INSTALL_PATH = /Library/AssistantPlusPlugins/
|
||||
inquisitiveSiri_CFLAGS = -fobjc-arc
|
||||
inquisitiveSiri_FRAMEWORKS = Foundation
|
||||
|
||||
include $(THEOS_MAKE_PATH)/bundle.mk
|
||||
|
||||
after-install::
|
||||
install.exec "killall -9 SpringBoard"
|
@ -3,19 +3,19 @@
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>APPluginName</key>
|
||||
<string>Spotify Control</string>
|
||||
<string>Inquisitive Siri</string>
|
||||
<key>APPluginAuthor</key>
|
||||
<string>Zaid Elkurdi</string>
|
||||
<key>CFBundleName</key>
|
||||
<string>spotifySiri</string>
|
||||
<string>inquisitiveSiri</string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>com.assistantplus.spotifySiri</string>
|
||||
<string>com.assistantplus.inquisitiveSiri</string>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>1</string>
|
||||
<key>CFBundleDisplayName</key>
|
||||
<string>SpotifySiri</string>
|
||||
<string>InquisitiveSiri</string>
|
||||
<key>MinimumOSVersion</key>
|
||||
<string>5.0</string>
|
||||
<key>CFBundleSupportedPlatforms</key>
|
||||
@ -27,7 +27,7 @@
|
||||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
<key>AppBundleID</key>
|
||||
<string>com.assistantplus.spotifySiri</string>
|
||||
<string>com.assistantplus.inquisitiveSiri</string>
|
||||
<key>UIDeviceFamily</key>
|
||||
<array>
|
||||
<integer>1</integer>
|
||||
@ -36,6 +36,6 @@
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>1.0</string>
|
||||
<key>NSPrincipalClass</key>
|
||||
<string>spotifySiri</string>
|
||||
<string>inquisitiveSiri</string>
|
||||
</dict>
|
||||
</plist>
|
10
inquisitiveSiri/inquisitiveSiri/_/DEBIAN/control
Normal file
10
inquisitiveSiri/inquisitiveSiri/_/DEBIAN/control
Normal file
@ -0,0 +1,10 @@
|
||||
Package: com.assistantplus.inquisitiveSiri
|
||||
Name: inquisitiveSiri
|
||||
Depends: mobilesubstrate, org.thebigboss.assistantplus
|
||||
Architecture: iphoneos-arm
|
||||
Description: Let Siri get to know you
|
||||
Maintainer: Zaid Elkurdi
|
||||
Author: Zaid Elkurdi
|
||||
Section: Tweaks
|
||||
Version: 1.0.0-9
|
||||
Installed-Size: 136
|
@ -0,0 +1,41 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>APPluginName</key>
|
||||
<string>Inquisitive Siri</string>
|
||||
<key>APPluginAuthor</key>
|
||||
<string>Zaid Elkurdi</string>
|
||||
<key>CFBundleName</key>
|
||||
<string>inquisitiveSiri</string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>com.assistantplus.inquisitiveSiri</string>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>1</string>
|
||||
<key>CFBundleDisplayName</key>
|
||||
<string>InquisitiveSiri</string>
|
||||
<key>MinimumOSVersion</key>
|
||||
<string>5.0</string>
|
||||
<key>CFBundleSupportedPlatforms</key>
|
||||
<array>
|
||||
<string>iPhoneOS</string>
|
||||
</array>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>BNDL</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
<key>AppBundleID</key>
|
||||
<string>com.assistantplus.inquisitiveSiri</string>
|
||||
<key>UIDeviceFamily</key>
|
||||
<array>
|
||||
<integer>1</integer>
|
||||
<integer>2</integer>
|
||||
</array>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>1.0</string>
|
||||
<key>NSPrincipalClass</key>
|
||||
<string>inquisitiveSiri</string>
|
||||
</dict>
|
||||
</plist>
|
Binary file not shown.
Binary file not shown.
9
inquisitiveSiri/inquisitiveSiri/control
Normal file
9
inquisitiveSiri/inquisitiveSiri/control
Normal file
@ -0,0 +1,9 @@
|
||||
Package: com.assistantplus.inquisitiveSiri
|
||||
Name: inquisitiveSiri
|
||||
Depends: mobilesubstrate, org.thebigboss.assistantplus
|
||||
Version: 1.0.0
|
||||
Architecture: iphoneos-arm
|
||||
Description: Let Siri get to know you
|
||||
Maintainer: Zaid Elkurdi
|
||||
Author: Zaid Elkurdi
|
||||
Section: Tweaks
|
14
inquisitiveSiri/inquisitiveSiri/inquisitiveSiri.h
Normal file
14
inquisitiveSiri/inquisitiveSiri/inquisitiveSiri.h
Normal file
@ -0,0 +1,14 @@
|
||||
//
|
||||
// inquisitiveSiri.h
|
||||
// inquisitiveSiri
|
||||
//
|
||||
// Created by Zaid Elkurdi on 7/12/15.
|
||||
// Copyright (c) 2015 Zaid Elkurdi. All rights reserved.
|
||||
//
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
#import "AssistantPlusHeaders.h"
|
||||
|
||||
@interface inquisitiveSiri : NSObject <APPlugin>
|
||||
-(id)initWithPluginManager:(id<APPluginManager>)manager;
|
||||
@end
|
22
inquisitiveSiri/inquisitiveSiri/inquisitiveSiri.m
Normal file
22
inquisitiveSiri/inquisitiveSiri/inquisitiveSiri.m
Normal file
@ -0,0 +1,22 @@
|
||||
//
|
||||
// inquisitiveSiri.m
|
||||
// inquisitiveSiri
|
||||
//
|
||||
// Created by Zaid Elkurdi on 7/12/15.
|
||||
// Copyright (c) 2015 Zaid Elkurdi. All rights reserved.
|
||||
//
|
||||
|
||||
#import "inquisitiveSiri.h"
|
||||
#import "InquisitiveSiriCommands.h"
|
||||
|
||||
@implementation inquisitiveSiri
|
||||
|
||||
-(id)initWithPluginManager:(id<APPluginManager>)manager {
|
||||
if (self = [super init]) {
|
||||
//Register the command with the plugin manager
|
||||
[manager registerCommand:[InquisitiveSiriCommands class]];
|
||||
}
|
||||
return self;
|
||||
}
|
||||
|
||||
@end
|
0
inquisitiveSiri/inquisitiveSiri/obj/.stamp
Normal file
0
inquisitiveSiri/inquisitiveSiri/obj/.stamp
Normal file
Binary file not shown.
@ -0,0 +1,41 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>APPluginName</key>
|
||||
<string>Inquisitive Siri</string>
|
||||
<key>APPluginAuthor</key>
|
||||
<string>Zaid Elkurdi</string>
|
||||
<key>CFBundleName</key>
|
||||
<string>inquisitiveSiri</string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>com.assistantplus.inquisitiveSiri</string>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>1</string>
|
||||
<key>CFBundleDisplayName</key>
|
||||
<string>InquisitiveSiri</string>
|
||||
<key>MinimumOSVersion</key>
|
||||
<string>5.0</string>
|
||||
<key>CFBundleSupportedPlatforms</key>
|
||||
<array>
|
||||
<string>iPhoneOS</string>
|
||||
</array>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>BNDL</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
<key>AppBundleID</key>
|
||||
<string>com.assistantplus.inquisitiveSiri</string>
|
||||
<key>UIDeviceFamily</key>
|
||||
<array>
|
||||
<integer>1</integer>
|
||||
<integer>2</integer>
|
||||
</array>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>1.0</string>
|
||||
<key>NSPrincipalClass</key>
|
||||
<string>inquisitiveSiri</string>
|
||||
</dict>
|
||||
</plist>
|
Binary file not shown.
@ -0,0 +1,41 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>APPluginName</key>
|
||||
<string>Inquisitive Siri</string>
|
||||
<key>APPluginAuthor</key>
|
||||
<string>Zaid Elkurdi</string>
|
||||
<key>CFBundleName</key>
|
||||
<string>inquisitiveSiri</string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>com.assistantplus.inquisitiveSiri</string>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>1</string>
|
||||
<key>CFBundleDisplayName</key>
|
||||
<string>InquisitiveSiri</string>
|
||||
<key>MinimumOSVersion</key>
|
||||
<string>5.0</string>
|
||||
<key>CFBundleSupportedPlatforms</key>
|
||||
<array>
|
||||
<string>iPhoneOS</string>
|
||||
</array>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>BNDL</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
<key>AppBundleID</key>
|
||||
<string>com.assistantplus.inquisitiveSiri</string>
|
||||
<key>UIDeviceFamily</key>
|
||||
<array>
|
||||
<integer>1</integer>
|
||||
<integer>2</integer>
|
||||
</array>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>1.0</string>
|
||||
<key>NSPrincipalClass</key>
|
||||
<string>inquisitiveSiri</string>
|
||||
</dict>
|
||||
</plist>
|
BIN
inquisitiveSiri/inquisitiveSiri/obj/inquisitiveSiri.m.43dcfe55.o
Normal file
BIN
inquisitiveSiri/inquisitiveSiri/obj/inquisitiveSiri.m.43dcfe55.o
Normal file
Binary file not shown.
1
inquisitiveSiri/inquisitiveSiri/theos
Symbolic link
1
inquisitiveSiri/inquisitiveSiri/theos
Symbolic link
@ -0,0 +1 @@
|
||||
/opt/theos
|
@ -1,10 +0,0 @@
|
||||
Package: com.assistantplus.spotifycontrols
|
||||
Name: spotifySiriControls
|
||||
Depends: mobilesubstrate, com.zaid.assistant+
|
||||
Architecture: iphoneos-arm
|
||||
Description: Control Spotify using Siri! Currently spotifySiriControls supports searching for tracks, artists, and albums using commands like, “Search for Drake on Spotify”, “Search Taylor Swift on Spotify”, “Play Books by Swiss Lips on Spotify”, and “Play Paris on Spotify”.
|
||||
Maintainer: Zaid Elkurdi
|
||||
Author: Zaid Elkurdi
|
||||
Section: Tweaks
|
||||
Version: 1.0.0-1
|
||||
Installed-Size: 616
|
Binary file not shown.
Binary file not shown.
Loading…
Reference in New Issue
Block a user