aboutsummaryrefslogtreecommitdiffstats
path: root/include/probe.php
diff options
context:
space:
mode:
authorHaakon Meland Eriksen <haakon.eriksen@far.no>2014-06-24 19:34:36 +0200
committerHaakon Meland Eriksen <haakon.eriksen@far.no>2014-06-24 19:34:36 +0200
commitb8dc9e855af2d30f33d0f90dc13d8cad0a7b3e70 (patch)
tree718df6305bcb82c8dcb4b287a7132422e748cdfb /include/probe.php
parentc2d520f1be115fb3cb5da2a35eb10146cecee8aa (diff)
parenta92fb0b04c3e6474ec48faf8e4cc65c382e89d66 (diff)
downloadvolse-hubzilla-b8dc9e855af2d30f33d0f90dc13d8cad0a7b3e70.tar.gz
volse-hubzilla-b8dc9e855af2d30f33d0f90dc13d8cad0a7b3e70.tar.bz2
volse-hubzilla-b8dc9e855af2d30f33d0f90dc13d8cad0a7b3e70.zip
Merge remote-tracking branch 'upstream/master'
Diffstat (limited to 'include/probe.php')
-rw-r--r--include/probe.php99
1 files changed, 99 insertions, 0 deletions
diff --git a/include/probe.php b/include/probe.php
new file mode 100644
index 000000000..29635f963
--- /dev/null
+++ b/include/probe.php
@@ -0,0 +1,99 @@
+<?php /** @file */
+
+
+/**
+ * Functions to assist in probing various legacy networks to figure out what kind of capabilities might be present.
+ */
+
+
+function net_have_driver($net) {
+
+ if(function_exists('net_discover_' . $net))
+ return true;
+ return false;
+}
+
+function probe_well_known($addr) {
+
+ $ret = array();
+
+ $ret['src'] = $addr;
+
+ if(strpos($addr,'@') !== false) {
+ $ret['address'] = $addr;
+ }
+ else {
+ $ret['url'] = $addr;
+ }
+
+ if(stristr($addr,'facebook.com')) {
+ $ret['network'] = 'facebook';
+ }
+ if(stristr($addr,'google.com')) {
+ $ret['network'] = 'google';
+ }
+ if(stristr($addr,'linkedin.com')) {
+ $ret['network'] = 'linkedin';
+ }
+
+ call_hooks('probe_well_known', $ret);
+
+ if(array_key_exists('network',$ret) && net_have_driver($ret['network'])) {
+ $fn = 'net_discover_' . $ret['network'];
+ $ret = $fn($ret);
+ }
+
+
+ return $ret;
+
+}
+
+
+
+
+function probe_webfinger($addr) {
+
+
+
+
+
+}
+
+
+function probe_legacy_webfinger($addr) {
+
+
+
+
+}
+
+function probe_zot($addr) {
+
+
+
+}
+
+function probe_dfrn($addr) {
+
+
+}
+
+
+function probe_diaspora($addr) {
+
+
+}
+
+
+function probe_legacy_feed($addr) {
+
+
+
+}
+
+
+function probe_activity_stream($addr) {
+
+
+}
+