www.trams.co.uk
Open in
urlscan Pro
34.245.121.87
Public Scan
Submitted URL: http://tramscloud.co.uk/
Effective URL: https://www.trams.co.uk/solutions/tramscloud
Submission Tags: tranco_l324
Submission: On April 17 via api from DE — Scanned from DE
Effective URL: https://www.trams.co.uk/solutions/tramscloud
Submission Tags: tranco_l324
Submission: On April 17 via api from DE — Scanned from DE
Form analysis
4 forms found in the DOMGET https://www.trams.co.uk/search
<form method="get" action="https://www.trams.co.uk/search">
<input type="text" placeholder="Search" name="keyword">
</form>
POST
<form method="post" data-freeform="" data-id="845559-form-kOb8W389y-ZPNWQlMny-cpcc6bFzw9QSv5s3WAgaX5OG7BhnXxe2d3oZuBd7" data-handle="contactForm" data-show-processing-spinner="" data-auto-scroll="1" data-show-processing-text=""
data-processing-text="Processing..." data-success-message="Form has been submitted successfully!" data-error-message="Sorry, there was an error submitting the form. Please try again.">
<input type="hidden" name="formHash" value="kOb8W389y-ZPNWQlMny-cpcc6bFzw9QSv5s3WAgaX5OG7BhnXxe2d3oZuBd7">
<input type="hidden" name="action" value="freeform/submit">
<div id="845559-form-kOb8W389y-ZPNWQlMny-cpcc6bFzw9QSv5s3WAgaX5OG7BhnXxe2d3oZuBd7" data-scroll-anchor="" style="display: none;"></div>
<input type="hidden" name="CRAFT_CSRF_TOKEN" value="nC_lUwXrYS2anRaDV5Yq2nVK-2EeRfOm2Sw5O9h7VsrLRO5_kI-X7uR5oD9xgSp1ovJDx2X0fqMCfb0-LC_Dyb4fC320SzvyknDcR9L72pw=">
<input type="hidden" name="freeform-action" value="submit">
<script>
var form = document.querySelector('[data-id="845559-form-kOb8W389y-ZPNWQlMny-cpcc6bFzw9QSv5s3WAgaX5OG7BhnXxe2d3oZuBd7"]');
if (form) {
// Styling for AJAX responses
form.addEventListener("freeform-ready", function(event) {
var freeform = event.freeform;
freeform.setOption("errorClassBanner", ["callout", "alert"]);
freeform.setOption("errorClassList", ["errors"]);
freeform.setOption("errorClassField", "has-error");
freeform.setOption("successClassBanner", ["callout", "success"]);
})
// Styling for Stripe Payments field
form.addEventListener("freeform-stripe-appearance", function(event) {
event.elementOptions.appearance = Object.assign(event.elementOptions.appearance, {
variables: {
colorPrimary: "#0d6efd",
},
});
});
}
</script>
<div class="grid-container">
<div class="grid-x grid-margin-x">
<div data-field-container="firstName" data-field-type="text" class="medium-6 freeform-fieldtype-text cell"><label class="label_hide freeform-label required" for="form-input-firstName">First Name</label>
<input novalidate="" class="freeform-field" required="" name="firstName" type="text" id="form-input-firstName" placeholder="First Name" value="">
</div>
<div data-field-container="lastName" data-field-type="text" class="medium-6 freeform-fieldtype-text cell"><label class="label_hide freeform-label required" for="form-input-lastName">Last Name</label>
<input novalidate="" class="freeform-field" required="" name="lastName" type="text" id="form-input-lastName" placeholder="Last Name" value="">
</div>
</div>
<div class="grid-x grid-margin-x">
<div data-field-container="jobTitle" data-field-type="text" class="medium-6 freeform-fieldtype-text cell"><label class="label_hide freeform-label" for="form-input-jobTitle">Job Title</label>
<input novalidate="" class="freeform-field" name="jobTitle" type="text" id="form-input-jobTitle" placeholder="Job Title" value="">
</div>
<div data-field-container="companyName" data-field-type="text" class="medium-6 freeform-fieldtype-text cell"><label class="label_hide freeform-label required" for="form-input-companyName">Company / School</label>
<input novalidate="" class="freeform-field" required="" name="companyName" type="text" id="form-input-companyName" placeholder="Company / School" value="">
</div>
</div>
<div class="grid-x grid-margin-x">
<div data-field-container="homePhone" data-field-type="text" class="medium-6 freeform-fieldtype-text cell"><label class="label_hide freeform-label" for="form-input-homePhone">Contact Number</label>
<input novalidate="" class="freeform-field" name="homePhone" type="text" id="form-input-homePhone" placeholder="Contact Number" value="">
</div>
<div data-field-container="email" data-field-type="email" class="medium-6 freeform-fieldtype-email cell"><label class="label_hide freeform-label required" for="form-input-email">Email</label>
<input novalidate="" class="freeform-field" required="" name="email" type="email" id="form-input-email" placeholder="Email" value="" data-required="">
</div>
</div>
<div class="grid-x grid-margin-x">
<div data-field-container="message" data-field-type="textarea" class="medium-12 freeform-fieldtype-textarea cell"><label class="label_hide freeform-label required" for="form-input-message">Enquiry</label>
<textarea novalidate="" class="freeform-field" required="" name="message" id="form-input-message" rows="5" placeholder="Enquiry" data-required=""></textarea>
</div>
</div>
<div class="grid-x grid-margin-x">
<div data-field-container="checkbox" data-field-type="checkbox" class="medium-12 freeform-fieldtype-checkbox cell">
<input name="checkbox" type="hidden" value=""><input novalidate="" class="freeform-field" name="checkbox" type="checkbox" id="form-input-checkbox" value="YES"><label class="label-consent freeform-label" for="form-input-checkbox">I would like
to receive news, offers and event invites from Trams | Econocom?</label>
</div>
</div>
</div>
<div data-freeform-hcaptcha-container=""></div>
<div data-freeform-recaptcha-container=""></div>
<script type="application/json" data-rules-json="">
[]
</script>
<input type="hidden" name="freeform_payload"
value="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">
<div class="cell submit-buttons" data-freeform-controls="">
<div>
</div>
<div>
<div>
<button class="button primary" data-freeform-action="submit" name="form_page_submit" type="submit" data-original-text="" data-processing-text="Processing...">Submit</button>
</div>
</div>
</div>
<script type="text/javascript">
! function() {
"use strict";
var e, r, o, n, a, t, f = {
387: function(e, r, o) {
o.d(r, {
_V: function() {
return d
}
});
var n, a, t, f = "recaptcha-script";
! function(e) {
e.DARK = "dark", e.LIGHT = "light"
}(n || (n = {})),
function(e) {
e.COMPACT = "compact", e.NORMAL = "normal"
}(a || (a = {})),
function(e) {
e.V2_CHECKBOX = "v2-checkbox", e.V2_INVISIBLE = "v2-invisible", e.V3 = "v3"
}(t || (t = {}));
var d = function(e, r) {
var o = r.sitekey,
n = r.lazyLoad,
a = void 0 !== n && n,
d = r.version,
i = void 0 === d ? t.V2_CHECKBOX : d,
s = r.locale,
c = function() {
return new Promise((function(e, r) {
if (document.querySelector("#".concat(f))) e();
else {
var n = new URL("https://www.google.com/recaptcha/api.js");
i === t.V3 ? n.searchParams.append("render", o) : n.searchParams.append("render", "explicit"), s && n.searchParams.append("hl", s);
var a = document.createElement("script");
a.src = String(n), a.async = !0, a.defer = !0, a.id = f, a.addEventListener("load", (function() {
return e()
})), a.addEventListener("error", (function() {
return r(new Error("Error loading script ".concat(n)))
})), document.body.appendChild(a)
}
}))
};
return a ? new Promise((function(r, o) {
var n = function() {
e.removeEventListener("input", n), c().then((function() {
return r()
})).catch(o)
};
e.addEventListener("input", n)
})) : c()
}
}
},
d = {};
function i(e) {
var r = d[e];
if (void 0 !== r) return r.exports;
var o = d[e] = {
exports: {}
};
return f[e](o, o.exports, i), o.exports
}
i.d = function(e, r) {
for (var o in r) i.o(r, o) && !i.o(e, o) && Object.defineProperty(e, o, {
enumerable: !0,
get: r[o]
})
}, i.o = function(e, r) {
return Object.prototype.hasOwnProperty.call(e, r)
}, e = {
form: {
ready: "freeform-ready",
reset: "freeform-on-reset",
submit: "freeform-on-submit",
removeMessages: "freeform-remove-messages",
fieldRemoveMessages: "freeform-remove-field-messages",
renderSuccess: "freeform-render-success",
renderFieldErrors: "freeform-render-field-errors",
renderFormErrors: "freeform-render-form-errors",
ajaxBeforeSuccess: "freeform-before-ajax-success",
ajaxSuccess: "freeform-ajax-success",
ajaxError: "freeform-ajax-error",
ajaxBeforeSubmit: "freeform-ajax-before-submit",
ajaxAfterSubmit: "freeform-ajax-after-submit",
handleActions: "freeform-handle-actions"
},
rules: {
applied: "freeform-rules-applied"
},
table: {
onAddRow: "freeform-field-table-on-add-row",
afterRowAdded: "freeform-field-table-after-row-added",
onRemoveRow: "freeform-field-table-on-remove-row",
afterRemoveRow: "freeform-field-table-after-remove-row"
},
dragAndDrop: {
renderPreview: "freeform-field-dnd-on-render-preview",
renderPreviewRemoveButton: "freeform-field-dnd-on-render-preview-remove-button",
renderErrorContainer: "freeform-field-dnd-render-error-container",
showGlobalMessage: "freeform-field-dnd-show-global-message",
appendErrors: "freeform-field-dnd-append-errors",
clearErrors: "freeform-field-dnd-clear-errors",
onChange: "freeform-field-dnd-on-change",
onUploadProgress: "freeform-field-dnd-on-upload-progress"
},
saveAndContinue: {
saveFormhandleToken: "freeform-save-form-handle-token"
}
}, r = i(387), o = function() {
return o = Object.assign || function(e) {
for (var r, o = 1, n = arguments.length; o < n; o++)
for (var a in r = arguments[o]) Object.prototype.hasOwnProperty.call(r, a) && (e[a] = r[a]);
return e
}, o.apply(this, arguments)
}, n = document.querySelector('form[data-id="845559-form-kOb8W389y-ZPNWQlMny-cpcc6bFzw9QSv5s3WAgaX5OG7BhnXxe2d3oZuBd7"]'), a = {
sitekey: "6Ldeq7wmAAAAAKidNJuKokaGOamX3ampuXFA-FVD",
theme: "light",
size: "normal",
lazyLoad: Boolean("1"),
version: "v2-checkbox",
locale: "en"
}, t = function(e) {
var r = n.querySelector(".g-recaptcha");
if (r) return r;
var o = a.sitekey,
t = a.theme,
f = a.size,
d = document.createElement("div");
d.classList.add("g-recaptcha");
var i = e.form.querySelector("[data-freeform-recaptcha-container]");
return i ? (i.appendChild(d), grecaptcha.ready((function() {
grecaptcha.render(d, {
sitekey: o,
theme: t,
size: f
})
})), d) : null
}, n.addEventListener(e.form.ready, (function(e) {
(0, r._V)(e.form, a).then((function() {
t(e)
}))
})), n.addEventListener(e.form.ajaxAfterSubmit, (function(e) {
(0, r._V)(e.form, o(o({}, a), {
lazyLoad: !1
})).then((function() {
t(e) && grecaptcha.ready((function() {
return grecaptcha.reset()
}))
}))
}))
}();
</script>
</form>
POST
<form method="post" data-freeform="" data-id="845559-form-kOb8W389y-ZPNWQlMny-8uuaRjhAmnqZ7osQNHsMFEyW3G3LJLdrwhs2H1Lt" data-handle="contactForm" data-show-processing-spinner="" data-auto-scroll="1" data-show-processing-text=""
data-processing-text="Processing..." data-success-message="Form has been submitted successfully!" data-error-message="Sorry, there was an error submitting the form. Please try again." class="form-default" userequiredattribute="">
<input type="hidden" name="formHash" value="kOb8W389y-ZPNWQlMny-8uuaRjhAmnqZ7osQNHsMFEyW3G3LJLdrwhs2H1Lt">
<input type="hidden" name="action" value="freeform/submit">
<div id="845559-form-kOb8W389y-ZPNWQlMny-8uuaRjhAmnqZ7osQNHsMFEyW3G3LJLdrwhs2H1Lt" data-scroll-anchor="" style="display: none;"></div>
<input type="hidden" name="CRAFT_CSRF_TOKEN" value="nC_lUwXrYS2anRaDV5Yq2nVK-2EeRfOm2Sw5O9h7VsrLRO5_kI-X7uR5oD9xgSp1ovJDx2X0fqMCfb0-LC_Dyb4fC320SzvyknDcR9L72pw=">
<input type="hidden" name="freeform-action" value="submit">
<input type="hidden" name="formReturnUrl" value="89565ff43a5a7094641ddae0bf7b46c75b71265502067ad043ab52e88db73507/submitted/thank-you-for-your-submission">
<script>
var form = document.querySelector('[data-id="845559-form-kOb8W389y-ZPNWQlMny-8uuaRjhAmnqZ7osQNHsMFEyW3G3LJLdrwhs2H1Lt"]');
if (form) {
// Styling for AJAX responses
form.addEventListener("freeform-ready", function(event) {
var freeform = event.freeform;
freeform.setOption("errorClassBanner", ["callout", "alert"]);
freeform.setOption("errorClassList", ["errors"]);
freeform.setOption("errorClassField", "has-error");
freeform.setOption("successClassBanner", ["callout", "success"]);
})
// Styling for Stripe Payments field
form.addEventListener("freeform-stripe-appearance", function(event) {
event.elementOptions.appearance = Object.assign(event.elementOptions.appearance, {
variables: {
colorPrimary: "#0d6efd",
},
});
});
}
</script>
<div class="grid-container">
<div class="grid-x grid-margin-x grid-x grid-margin-x">
<div data-field-container="firstName" data-field-type="text" class="medium-6 freeform-fieldtype-text cell"><label class="label_hide freeform-label required" for="form-input-firstName">First Name</label>
<input required="" novalidate="" class="freeform-field" name="firstName" type="text" id="form-input-firstName" placeholder="First Name" value="">
</div>
<div data-field-container="lastName" data-field-type="text" class="medium-6 freeform-fieldtype-text cell"><label class="label_hide freeform-label required" for="form-input-lastName">Last Name</label>
<input required="" novalidate="" class="freeform-field" name="lastName" type="text" id="form-input-lastName" placeholder="Last Name" value="">
</div>
</div>
<div class="grid-x grid-margin-x grid-x grid-margin-x">
<div data-field-container="jobTitle" data-field-type="text" class="medium-6 freeform-fieldtype-text cell"><label class="label_hide freeform-label" for="form-input-jobTitle">Job Title</label>
<input novalidate="" class="freeform-field" name="jobTitle" type="text" id="form-input-jobTitle" placeholder="Job Title" value="">
</div>
<div data-field-container="companyName" data-field-type="text" class="medium-6 freeform-fieldtype-text cell"><label class="label_hide freeform-label required" for="form-input-companyName">Company / School</label>
<input required="" novalidate="" class="freeform-field" name="companyName" type="text" id="form-input-companyName" placeholder="Company / School" value="">
</div>
</div>
<div class="grid-x grid-margin-x grid-x grid-margin-x">
<div data-field-container="homePhone" data-field-type="text" class="medium-6 freeform-fieldtype-text cell"><label class="label_hide freeform-label" for="form-input-homePhone">Contact Number</label>
<input novalidate="" class="freeform-field" name="homePhone" type="text" id="form-input-homePhone" placeholder="Contact Number" value="">
</div>
<div data-field-container="email" data-field-type="email" class="medium-6 freeform-fieldtype-email cell"><label class="label_hide freeform-label required" for="form-input-email">Email</label>
<input required="" novalidate="" class="freeform-field" name="email" type="email" id="form-input-email" placeholder="Email" value="" data-required="">
</div>
</div>
<div class="grid-x grid-margin-x grid-x grid-margin-x">
<div data-field-container="message" data-field-type="textarea" class="medium-12 freeform-fieldtype-textarea cell"><label class="label_hide freeform-label required" for="form-input-message">Enquiry</label>
<textarea required="" novalidate="" class="freeform-field" name="message" id="form-input-message" rows="5" placeholder="Enquiry" data-required=""></textarea>
</div>
</div>
<div class="grid-x grid-margin-x grid-x grid-margin-x">
<div data-field-container="checkbox" data-field-type="checkbox" class="medium-12 freeform-fieldtype-checkbox cell">
<input name="checkbox" type="hidden" value=""><input novalidate="" class="freeform-field" name="checkbox" type="checkbox" id="form-input-checkbox" value="YES"><label class="label-consent freeform-label" for="form-input-checkbox">I would like
to receive news, offers and event invites from Trams | Econocom?</label>
</div>
</div>
</div>
<div data-freeform-hcaptcha-container=""></div>
<div data-freeform-recaptcha-container=""></div>
<script type="application/json" data-rules-json="">
[]
</script>
<input type="hidden" name="freeform_payload"
value="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">
<div class="cell submit-buttons cell submit-buttons" data-freeform-controls="">
<div>
</div>
<div>
<div>
<button class="button primary" data-freeform-action="submit" name="form_page_submit" type="submit" data-original-text="Submit" data-processing-text="Processing...">Submit</button>
</div>
</div>
</div>
<script type="text/javascript">
! function() {
"use strict";
var e, r, o, n, a, t, f = {
387: function(e, r, o) {
o.d(r, {
_V: function() {
return d
}
});
var n, a, t, f = "recaptcha-script";
! function(e) {
e.DARK = "dark", e.LIGHT = "light"
}(n || (n = {})),
function(e) {
e.COMPACT = "compact", e.NORMAL = "normal"
}(a || (a = {})),
function(e) {
e.V2_CHECKBOX = "v2-checkbox", e.V2_INVISIBLE = "v2-invisible", e.V3 = "v3"
}(t || (t = {}));
var d = function(e, r) {
var o = r.sitekey,
n = r.lazyLoad,
a = void 0 !== n && n,
d = r.version,
i = void 0 === d ? t.V2_CHECKBOX : d,
s = r.locale,
c = function() {
return new Promise((function(e, r) {
if (document.querySelector("#".concat(f))) e();
else {
var n = new URL("https://www.google.com/recaptcha/api.js");
i === t.V3 ? n.searchParams.append("render", o) : n.searchParams.append("render", "explicit"), s && n.searchParams.append("hl", s);
var a = document.createElement("script");
a.src = String(n), a.async = !0, a.defer = !0, a.id = f, a.addEventListener("load", (function() {
return e()
})), a.addEventListener("error", (function() {
return r(new Error("Error loading script ".concat(n)))
})), document.body.appendChild(a)
}
}))
};
return a ? new Promise((function(r, o) {
var n = function() {
e.removeEventListener("input", n), c().then((function() {
return r()
})).catch(o)
};
e.addEventListener("input", n)
})) : c()
}
}
},
d = {};
function i(e) {
var r = d[e];
if (void 0 !== r) return r.exports;
var o = d[e] = {
exports: {}
};
return f[e](o, o.exports, i), o.exports
}
i.d = function(e, r) {
for (var o in r) i.o(r, o) && !i.o(e, o) && Object.defineProperty(e, o, {
enumerable: !0,
get: r[o]
})
}, i.o = function(e, r) {
return Object.prototype.hasOwnProperty.call(e, r)
}, e = {
form: {
ready: "freeform-ready",
reset: "freeform-on-reset",
submit: "freeform-on-submit",
removeMessages: "freeform-remove-messages",
fieldRemoveMessages: "freeform-remove-field-messages",
renderSuccess: "freeform-render-success",
renderFieldErrors: "freeform-render-field-errors",
renderFormErrors: "freeform-render-form-errors",
ajaxBeforeSuccess: "freeform-before-ajax-success",
ajaxSuccess: "freeform-ajax-success",
ajaxError: "freeform-ajax-error",
ajaxBeforeSubmit: "freeform-ajax-before-submit",
ajaxAfterSubmit: "freeform-ajax-after-submit",
handleActions: "freeform-handle-actions"
},
rules: {
applied: "freeform-rules-applied"
},
table: {
onAddRow: "freeform-field-table-on-add-row",
afterRowAdded: "freeform-field-table-after-row-added",
onRemoveRow: "freeform-field-table-on-remove-row",
afterRemoveRow: "freeform-field-table-after-remove-row"
},
dragAndDrop: {
renderPreview: "freeform-field-dnd-on-render-preview",
renderPreviewRemoveButton: "freeform-field-dnd-on-render-preview-remove-button",
renderErrorContainer: "freeform-field-dnd-render-error-container",
showGlobalMessage: "freeform-field-dnd-show-global-message",
appendErrors: "freeform-field-dnd-append-errors",
clearErrors: "freeform-field-dnd-clear-errors",
onChange: "freeform-field-dnd-on-change",
onUploadProgress: "freeform-field-dnd-on-upload-progress"
},
saveAndContinue: {
saveFormhandleToken: "freeform-save-form-handle-token"
}
}, r = i(387), o = function() {
return o = Object.assign || function(e) {
for (var r, o = 1, n = arguments.length; o < n; o++)
for (var a in r = arguments[o]) Object.prototype.hasOwnProperty.call(r, a) && (e[a] = r[a]);
return e
}, o.apply(this, arguments)
}, n = document.querySelector('form[data-id="845559-form-kOb8W389y-ZPNWQlMny-8uuaRjhAmnqZ7osQNHsMFEyW3G3LJLdrwhs2H1Lt"]'), a = {
sitekey: "6Ldeq7wmAAAAAKidNJuKokaGOamX3ampuXFA-FVD",
theme: "light",
size: "normal",
lazyLoad: Boolean("1"),
version: "v2-checkbox",
locale: "en"
}, t = function(e) {
var r = n.querySelector(".g-recaptcha");
if (r) return r;
var o = a.sitekey,
t = a.theme,
f = a.size,
d = document.createElement("div");
d.classList.add("g-recaptcha");
var i = e.form.querySelector("[data-freeform-recaptcha-container]");
return i ? (i.appendChild(d), grecaptcha.ready((function() {
grecaptcha.render(d, {
sitekey: o,
theme: t,
size: f
})
})), d) : null
}, n.addEventListener(e.form.ready, (function(e) {
(0, r._V)(e.form, a).then((function() {
t(e)
}))
})), n.addEventListener(e.form.ajaxAfterSubmit, (function(e) {
(0, r._V)(e.form, o(o({}, a), {
lazyLoad: !1
})).then((function() {
t(e) && grecaptcha.ready((function() {
return grecaptcha.reset()
}))
}))
}))
}();
</script>
</form>
POST
<form method="POST" class="ccc-banner__form ccc-form">
<div class="ccc-form__inner"><input type="hidden" name="CRAFT_CSRF_TOKEN" value="31OfAX5WDGwEaYt-509YxkA3NNSb2gJxUZiFYTy7WIT4MhIcFHencKcF2m0KPEc0PAbeOtUtDL83AHKLqbAyHjartydQizW8oQYgJFYD6gI="> <input type="hidden" name="action"
value="complete-cookie-consent/consent/submit"> <!---->
<div class="ccc-banner__label-container"><label for="cookieType-necessary" class="ccc-form__label"><input type="hidden" name="cookieTypes[]" value="necessary"> <input id="cookieType-necessary" type="checkbox" name="cookieTypes[]"
disabled="disabled" class="ccc-form__input" value="necessary"> <span class="ccc-form__label-text-container"><span class="ccc-form__label-text">Necessary</span> <!----></span></label><label for="cookieType-statistics"
class="ccc-form__label"><!----> <input id="cookieType-statistics" type="checkbox" name="cookieTypes[]" class="ccc-form__input" value="statistics"> <span class="ccc-form__label-text-container"><span
class="ccc-form__label-text">Statistics</span> <!----></span></label></div>
<div class="ccc-banner__buttons"><button type="submit" class="ccc-banner__button ccc-banner__button--primary" style="background-color: rgb(64, 64, 64); color: rgb(255, 255, 255);" data-original-text="Save settings"
data-processing-text="null">Save settings</button> <!----></div>
</div>
</form>
Text Content
* * Home * Enterprise IT * Media & Creative * Education * Solutions * Partners * About us * Econocom Group * Careers * Case Studies * Newsroom * Contact Us Solutions * Apple Device Management * Apple Repairs * Audiovisual * Backup & Recovery * Business Optimisation Services * Cloud Storage * Consultancy * Data Storage * Financial Services * Ingest & Playout * IT Cash Back * IT Recycling * Life Cycle Management * Live Optics * Mac Integration Review * Media Asset Management * Procurement Portals * Professional Services * Repairs * Security * Source & Deploy * Support * Tech-as-a-service * TramsCloud * TramsCloud VPN * Virtualisation * Workflow Automation Partners * Apple * Darktrace * Dell * Jamf * Kandji * Lenovo * Neat * Quantum * Veeam Products * MacBook Air M3 (15-inch) * MacBook Air M3 (13-inch) * iMac M3 (24-inch) * MacBook Pro M3 - 16" * MacBook Air M3 (13-inch) * iPhone SE * iPhone 14 * iPhone 13 * iPhone 12 * iPhone 12 Pro * iPad Air * iPad * iPad mini * iPad Pro 12.9-inch * * First Name Last Name Job Title Company / School Contact Number Email Enquiry I would like to receive news, offers and event invites from Trams | Econocom? Submit ✱ This field is required * Business Sales T: +44(0)20 7820 7111 F: +44(0)20 7820 7112 Education Sales T: +44(0)20 3327 2205 F: +44(0)20 3327 2206 Repairs & Support T: +44(0)20 7820 7121 F: +44(0)20 7820 7122 Accounts T: +44(0)20 7820 7127 F: +44(0)20 7820 7128 * Business Education * Home * Solutions TRAMSCLOUD TRAMSCLOUD IS A SUITE OF POWERFUL CLOUD HOSTED TOOLS, INCLUDING DEVICE MANAGEMENT AND BACK-UP SOLUTIONS, FOR BUSINESSES AND EDUCATION. Effective device management and data recovery is only possible if reliable and well-managed solutions are in place. With our high efficiency and robust cloud solutions, businesses and schools can be sure they have the tools necessary to meet their needs, without the pain and expense of many other solutions. TramsCloud represents the industry’s best user-focused ecosystem management solution, bar none. Solutions are available for Mac, iPad and iPhone through to Linux and PC Servers. -------------------------------------------------------------------------------- AUSTIN FRASER CASE STUDY -------------------------------------------------------------------------------- TRAMSCLOUD MANAGE TramsCloud Manage is a hosted, managed and enhanced Jamf Pro designed to empower businesses to be self-sufficient and to raise the bar of what is possible with technology in business. The great and unique aspect of TramsCloud Manage is how easily it scales; start with just a handful of devices and easily grow into the thousands as your business requirements change. Remotely access or control devices to maintain security and troubleshoot issues, automatically configure access to email and work apps, view real-time device inventory and more. Download brochure Contact us for more information -------------------------------------------------------------------------------- TRAMSCLOUD VAULT With data loss being commonplace due to negligence, malicious damage (such as Ransomware) or accidental deletion, it’s not a question of "if" but rather "when". If anything should happen to data that is not backed up, it is virtually impossible to retrieve and can cost you and your business money, time and stress. TramsCloud Vault is a secure and automated, online, disk-to-disk, backup and recovery service that is network efficient, centrally managed and simple to use. Fully customisable and seamlessly scalable; it supports a wide range of operating systems and applications running on desktops and servers. Our solution completely replaces backup media, meaning there are no more tapes to purchase, change, transport, catalogue and store. Eliminating the costs and data loss risks inherent in manual backup procedures, enables IT staff to focus on more strategic business initiatives. TramsCloud Vault is a fully automated backup solution and removes the risks associated with human intervention. Online backups run to schedules set by the user, and via the central management console, users gain visibility, control and ultimately peace of mind that their data is being protected. The management console addresses the challenges of: * Provisioning * Monitoring * Maintaining * Reporting on remote backup * Recovery through a single interface TRAMSCLOUD MODULES TRAMSCLOUD VPN Monthly subscription for a cloud-hosted VPN service for remote working. Read more TRAMSCLOUD WORKSPACES TramsCloud Workspaces is a new virtual desktop built on Amazon Web Services. Read more DEVICES ON TRAMSCLOUD MANAGE 41kMac 39kiOS 130Number of Companies Complete the form and more information can be sent to you on TramsCloud and the modules available. First Name Last Name Job Title Company / School Contact Number Email Enquiry I would like to receive news, offers and event invites from Trams | Econocom? Submit * This field is required * Home * Enterprise IT * Media & Creative * Education * Solutions * Partners * About us * Econocom Group * Careers * Case Studies * Newsroom * Contact Us Solutions * Apple Device Management * Apple Repairs * Audiovisual * Backup & Recovery * Business Optimisation Services * Cloud Storage * Consultancy * Data Storage * Financial Services * Ingest & Playout * IT Cash Back * IT Recycling * Life Cycle Management * Live Optics * Mac Integration Review * Media Asset Management * Procurement Portals * Professional Services * Repairs * Security * Source & Deploy * Support * Tech-as-a-service * TramsCloud * TramsCloud VPN * Virtualisation * Workflow Automation Partners * Apple * Darktrace * Dell * Jamf * Kandji * Lenovo * Neat * Quantum * Veeam Products * MacBook Air M3 (15-inch) * MacBook Air M3 (13-inch) * iMac M3 (24-inch) * MacBook Pro M3 - 16" * MacBook Air M3 (13-inch) * iPhone SE * iPhone 14 * iPhone 13 * iPhone 12 * iPhone 12 Pro * iPad Air * iPad * iPad mini * iPad Pro 12.9-inch -------------------------------------------------------------------------------- TRAMS | ECONOCOM Head Office 33 Queen Street, 4th Floor, London, EC4R 1AP Operations & Services Unit 7, Battersea Business Park, 104 Stewarts Road, London, SW8 4UG Business Sales T: +44(0)20 7820 7111 F: +44(0)20 7820 7112 sales@trams.co.uk Education Sales T: +44(0)20 3327 2205 F: +44(0)20 3327 2206 education@trams.co.uk Repairs & Support T: +44(0)20 7820 7121 F: +44(0)20 7820 7122 service@trams.co.uk Accounts T: +44(0)20 7820 7127 F: +44(0)20 7820 7128 accounts@trams.co.uk -------------------------------------------------------------------------------- ECONOCOM UK & IRL Head Office 33 Queen Street, 4th Floor, London, EC4R 1AP Enquiries T: +44(0)20 8940 2199 E: info.gb@econocom.com © Trams | Econocom 2024 - All Rights Reserved. | Registered in England No. 2518864 | Privacy Statement | Terms & Conditions| Slavery and Human Trafficking Statement Cert. No. 14133404 Cert. No. 300312019 THIS SITE USES COOKIES European cookie laws require us to show you, the visitor, this message and give you a choice as to what cookies will be set. Necessary Statistics Save settings